Chuyển đến nội dung chính

searchFileContent

Tìm kiếm công khai trong nội dung của các tệp đính kèm vào hồ sơ.

Description​

Phương thức này tìm kiếm bên trong văn bản của các tệp đính kèm vào hồ sơ của bạn - PDF, tài liệu và các loại tương tự - và trả về các tệp phù hợp, mỗi tệp kèm theo đoạn văn bản nơi tìm thấy sự phù hợp. Nó trả về một Promise mà khi hoàn thành sẽ trả về một đối tượng IFileSearchResponse.

FileUploading.searchFileContent(query, langCode, extensions, ownerTables, localeCodes, onlyTruncated, offset, limit);

Parameters​

query: string
Truy vấn tìm kiếm. Ít nhất 3 ký tự - một truy vấn ngắn hơn sẽ bị từ chối với mã 400.
ví dụ: "transportation"

langCode: string (tùy chọn)
Ngôn ngữ của truy vấn. Mặc định: "en_US".
ví dụ: "en_US"

extensions: string[] (tùy chọn)
Lọc theo phần mở rộng tệp.
ví dụ: ["pdf", "docx"]

ownerTables: string[] (tùy chọn)
Lọc theo phần mà hồ sơ đính kèm thuộc về.
ví dụ: ["products", "pages"]

localeCodes: string[] (tùy chọn)
Lọc theo ngôn ngữ của liên kết, không phải của nội dung tệp.
ví dụ: ["en_US"]

onlyTruncated: boolean (tùy chọn)
Chỉ trả về các tệp mà văn bản trích xuất bị cắt ở kích thước tối đa.
ví dụ: true

offset: number (tùy chọn)
Tham số cho phân trang. Mặc định: 0.
ví dụ: 0

limit: number (tùy chọn)
Tham số cho phân trang. Mặc định: 10, tối đa 50 - giá trị lớn hơn sẽ bị từ chối với mã 400.
ví dụ: 10

💡 Hai điều cần biết trước khi bạn hiển thị kết quả​

Đơn vị là một tệp, không phải một đoạn. Một snippet cho mỗi tệp, ngay cả khi tài liệu phù hợp trên hai mươi trang. snippet.pageFrom cho biết trang mà đoạn văn bắt đầu.

Sự phù hợp được đánh dấu bằng ký tự điều khiển, không phải HTML. Bên trong snippet.text, mỗi sự phù hợp được bao bọc trong U+0002 và U+0003. Dán nó vào đánh dấu của bạn mà không thay đổi và người đọc sẽ không thấy gì - thay thế chúng bằng cách làm nổi bật của riêng bạn:

const html = item.snippet.text
.replaceAll('\u0002', '<mark>')
.replaceAll('\u0003', '</mark>');

🔒 Những gì tìm kiếm trả về​

Chỉ các tệp của các hồ sơ hiển thị, và chỉ trong các phần được bật trong cài đặt dự án của bạn. Các phần cá nhân được thu hẹp chỉ đến các hồ sơ của người gọi, và phần quản trị viên không bao giờ được trả về. Một mã 403 với thông điệp thuế có nghĩa là tính năng này không được bao gồm trong gói của bạn.

Examples​

Ví dụ tối thiểu​

const response = await FileUploading.searchFileContent('transportation');

Chỉ PDF đính kèm vào sản phẩm​

const response = await FileUploading.searchFileContent(
'transportation',
'en_US',
['pdf'],
['products'],
);

Trang thứ hai​

const response = await FileUploading.searchFileContent(
'transportation',
'en_US',
undefined,
undefined,
undefined,
undefined,
10,
10,
);

Ví dụ phản hồi​

{
"total": 124,
"offset": 0,
"limit": 10,
"queryLanguage": {
"resolved": ["english"],
"source": "explicit",
"candidates": ["english"]
},
"warnings": [],
"items": [
{
"id": 1077,
"storageKey": "files/project/file/644/product/db1918c4.pdf",
"extension": "pdf",
"title": null,
"langCode": "en",
"pageCount": 244,
"rank": 0.0971,
"snippet": {
"text": "Active Transportation Demand Management",
"pageFrom": 86
},
"owners": [
{
"tableName": "products",
"dataId": 644,
"title": "COG - March 17, 2016",
"langCode": "en_US"
}
],
"ownersTotal": 2
}
]
}

Sơ đồ phản hồi​

Sơ đồ: IFileSearchResponse

total: number
Tổng số tệp phù hợp.
ví dụ: 124

offset: number
Giá trị bù mà trang bắt đầu.
ví dụ: 0

limit: number
Kích thước trang.
ví dụ: 10

queryLanguage: IFileSearchQueryLanguage
Cách ngôn ngữ truy vấn được giải quyết: đã giải quyết, nguồn, ứng viên.
ví dụ: { "resolved": ["english"], "source": "explicit", "candidates": ["english"] }

warnings: string[]
Cảnh báo về tìm kiếm, rỗng khi không có.
ví dụ: []

items: IFileSearchItem[]
Các tệp đã tìm thấy.
ví dụ: [{ "id": 1077, "extension": "pdf" }]

items[].id: number
Định danh của tệp đã lập chỉ mục.
ví dụ: 1077

items[].storageKey: string
Khóa của đối tượng trong kho; liên kết tệp được xây dựng từ nó.
ví dụ: "files/project/file/644/product/db1918c4.pdf"

items[].extension: string
Phần mở rộng tệp.
ví dụ: "pdf"

items[].title: string | null
Tiêu đề từ siêu dữ liệu tài liệu, null khi tài liệu không có.
ví dụ: null

items[].langCode: string | null
Ngôn ngữ của nội dung tệp, được phát hiện khi lập chỉ mục.
ví dụ: "en"

items[].pageCount: number | null
Số trang, cho các định dạng có trang.
ví dụ: 244

items[].rank: number
Độ liên quan của sự phù hợp; kết quả được sắp xếp theo thứ tự giảm dần.
ví dụ: 0.0971

items[].snippet: IFileSearchSnippet | null
Đoạn văn phù hợp: văn bản cộng với trang mà nó bắt đầu.
ví dụ: { "text": "Active Transportation", "pageFrom": 86 }

items[].owners: IFileSearchOwner[]
Các hồ sơ mà tệp được đính kèm, một mục cho mỗi ngôn ngữ.
ví dụ: [{ "tableName": "products", "dataId": 644 }]

items[].ownersTotal: number
Số lượng hồ sơ hiển thị cho người gọi tham chiếu đến tệp.
ví dụ: 2