@indexea/sdk
Version:
Indexea JavaScript SDK (indexea.com)
1,277 lines (1,036 loc) • 80.8 kB
text/typescript
/* tslint:disable */
/* eslint-disable */
/**
* Indexea OpenAPI
* 这是 Indexea 搜索服务平台的 OpenAPI,用于描述平台的所有接口信息,你可以通过这个页面来了解和在线验证平台的所有接口信息。 ### Errors 本 API 使用标准的 HTTP 状态码来指示操作成功或者失败,如果失败将会在 body 中以 JSON 格式提供详细的错误信息,如下所示: ``` { \"error\": 404, \"message\": \"page not found\" } ```
*
* The version of the OpenAPI document: 1.0.0
* Contact: indexea.com@gmail.com
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import * as runtime from '../runtime';
import type {
CrawlerLogs,
CrawlerTask,
IndexBean,
IndexForm,
IndexRebuildForm,
IndexSettings,
IndexTask,
IndexTemplate,
IndexTemplates,
SynonymsBean,
} from '../models';
import {
CrawlerLogsFromJSON,
CrawlerLogsToJSON,
CrawlerTaskFromJSON,
CrawlerTaskToJSON,
IndexBeanFromJSON,
IndexBeanToJSON,
IndexFormFromJSON,
IndexFormToJSON,
IndexRebuildFormFromJSON,
IndexRebuildFormToJSON,
IndexSettingsFromJSON,
IndexSettingsToJSON,
IndexTaskFromJSON,
IndexTaskToJSON,
IndexTemplateFromJSON,
IndexTemplateToJSON,
IndexTemplatesFromJSON,
IndexTemplatesToJSON,
SynonymsBeanFromJSON,
SynonymsBeanToJSON,
} from '../models';
export interface IndexCleanupRequest {
app: string;
index: number;
vcode: string;
}
export interface IndexCopyToRequest {
app: string;
index: number;
name: string;
fields: boolean;
queries: boolean;
records: boolean;
}
export interface IndexCreateRequest {
app: string;
indexForm: IndexForm;
}
export interface IndexCreateTemplateRequest {
indexTemplate: IndexTemplate;
}
export interface IndexDeleteRequest {
app: string;
index: number;
vcode: string;
}
export interface IndexDeleteCrawlerTaskRequest {
app: string;
index: number;
}
export interface IndexDeleteTemplateRequest {
id: number;
}
export interface IndexExportRequest {
app: string;
index: number;
format: IndexExportFormatEnum;
}
export interface IndexFlushRequest {
app: string;
index: number;
}
export interface IndexFlushSettingsRequest {
app: string;
index: number;
type: string;
password: string;
}
export interface IndexGetRequest {
app: string;
index: number;
}
export interface IndexGetCrawlerLogsRequest {
app: string;
index: number;
from?: number;
size?: number;
}
export interface IndexGetCrawlerTaskRequest {
app: string;
index: number;
}
export interface IndexGetFilterSettingsRequest {
app: string;
index: number;
type: IndexGetFilterSettingsTypeEnum;
}
export interface IndexGetSettingsRequest {
app: string;
index: number;
type: string;
}
export interface IndexListRequest {
app: string;
stat?: boolean;
}
export interface IndexListTemplatesRequest {
from?: number;
size?: number;
}
export interface IndexPrefetchRequest {
type: string;
url: string;
}
export interface IndexRebuildRequest {
app: string;
index: number;
indexRebuildForm: IndexRebuildForm;
}
export interface IndexRebuildTaskRequest {
app: string;
index: number;
taskId: number;
}
export interface IndexStatLogsRequest {
app: string;
index: number;
interval: IndexStatLogsIntervalEnum;
startDate?: Date;
endDate?: Date;
}
export interface IndexSubmitCrawlerTaskRequest {
app: string;
index: number;
crawlerTask: CrawlerTask;
}
export interface IndexTasksRequest {
app: string;
}
export interface IndexUpdateRequest {
app: string;
index: number;
indexForm: IndexForm;
}
export interface IndexUpdateSettingsRequest {
app: string;
index: number;
type: string;
body?: string;
}
export interface IndexUpdateTemplateRequest {
indexTemplate: IndexTemplate;
}
export interface SynonymsAddRequest {
app: string;
index: number;
synonymsBean: SynonymsBean;
}
export interface SynonymsDeleteRequest {
app: string;
index: number;
id: number;
}
export interface SynonymsEnableRequest {
app: string;
index: number;
id: number;
enable?: boolean;
all?: boolean;
}
export interface SynonymsFlushRequest {
app: string;
index: number;
password: string;
}
export interface SynonymsImportRequest {
app: string;
index: number;
action: number;
synonymsBean: Array<SynonymsBean>;
}
export interface SynonymsListRequest {
app: string;
index: number;
type?: number;
from?: number;
size?: number;
}
export interface SynonymsUpdateRequest {
app: string;
index: number;
synonymsBean: SynonymsBean;
}
/**
*
*/
export class IndicesApi extends runtime.BaseAPI {
/**
* 清空索引记录
*/
async indexCleanupRaw(requestParameters: IndexCleanupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexCleanup.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexCleanup.');
}
if (requestParameters.vcode === null || requestParameters.vcode === undefined) {
throw new runtime.RequiredError('vcode','Required parameter requestParameters.vcode was null or undefined when calling indexCleanup.');
}
const queryParameters: any = {};
if (requestParameters.vcode !== undefined) {
queryParameters['vcode'] = requestParameters.vcode;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/cleanup`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 清空索引记录
*/
async indexCleanup(requestParameters: IndexCleanupRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.indexCleanupRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 导出索引数据
*/
async indexCopyToRaw(requestParameters: IndexCopyToRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexBean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexCopyTo.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexCopyTo.');
}
if (requestParameters.name === null || requestParameters.name === undefined) {
throw new runtime.RequiredError('name','Required parameter requestParameters.name was null or undefined when calling indexCopyTo.');
}
if (requestParameters.fields === null || requestParameters.fields === undefined) {
throw new runtime.RequiredError('fields','Required parameter requestParameters.fields was null or undefined when calling indexCopyTo.');
}
if (requestParameters.queries === null || requestParameters.queries === undefined) {
throw new runtime.RequiredError('queries','Required parameter requestParameters.queries was null or undefined when calling indexCopyTo.');
}
if (requestParameters.records === null || requestParameters.records === undefined) {
throw new runtime.RequiredError('records','Required parameter requestParameters.records was null or undefined when calling indexCopyTo.');
}
const queryParameters: any = {};
if (requestParameters.name !== undefined) {
queryParameters['name'] = requestParameters.name;
}
if (requestParameters.fields !== undefined) {
queryParameters['fields'] = requestParameters.fields;
}
if (requestParameters.queries !== undefined) {
queryParameters['queries'] = requestParameters.queries;
}
if (requestParameters.records !== undefined) {
queryParameters['records'] = requestParameters.records;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/copyto`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexBeanFromJSON(jsonValue));
}
/**
* 导出索引数据
*/
async indexCopyTo(requestParameters: IndexCopyToRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexBean> {
const response = await this.indexCopyToRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 创建索引
*/
async indexCreateRaw(requestParameters: IndexCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexBean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexCreate.');
}
if (requestParameters.indexForm === null || requestParameters.indexForm === undefined) {
throw new runtime.RequiredError('indexForm','Required parameter requestParameters.indexForm was null or undefined when calling indexCreate.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: IndexFormToJSON(requestParameters.indexForm),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexBeanFromJSON(jsonValue));
}
/**
* 创建索引
*/
async indexCreate(requestParameters: IndexCreateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexBean> {
const response = await this.indexCreateRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 创建索引模板
*/
async indexCreateTemplateRaw(requestParameters: IndexCreateTemplateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexTemplate>> {
if (requestParameters.indexTemplate === null || requestParameters.indexTemplate === undefined) {
throw new runtime.RequiredError('indexTemplate','Required parameter requestParameters.indexTemplate was null or undefined when calling indexCreateTemplate.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/templates`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: IndexTemplateToJSON(requestParameters.indexTemplate),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexTemplateFromJSON(jsonValue));
}
/**
* 创建索引模板
*/
async indexCreateTemplate(requestParameters: IndexCreateTemplateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexTemplate> {
const response = await this.indexCreateTemplateRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 删除索引
*/
async indexDeleteRaw(requestParameters: IndexDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexDelete.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexDelete.');
}
if (requestParameters.vcode === null || requestParameters.vcode === undefined) {
throw new runtime.RequiredError('vcode','Required parameter requestParameters.vcode was null or undefined when calling indexDelete.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const consumes: runtime.Consume[] = [
{ contentType: 'application/x-www-form-urlencoded' },
];
// @ts-ignore: canConsumeForm may be unused
const canConsumeForm = runtime.canConsumeForm(consumes);
let formParams: { append(param: string, value: any): any };
let useForm = false;
if (useForm) {
formParams = new FormData();
} else {
formParams = new URLSearchParams();
}
if (requestParameters.vcode !== undefined) {
formParams.append('vcode', requestParameters.vcode as any);
}
const response = await this.request({
path: `/indices/{app}/{index}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
body: formParams,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 删除索引
*/
async indexDelete(requestParameters: IndexDeleteRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.indexDeleteRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 删除索引的数据爬取任务
*/
async indexDeleteCrawlerTaskRaw(requestParameters: IndexDeleteCrawlerTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexDeleteCrawlerTask.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexDeleteCrawlerTask.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/crawler-settings`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 删除索引的数据爬取任务
*/
async indexDeleteCrawlerTask(requestParameters: IndexDeleteCrawlerTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.indexDeleteCrawlerTaskRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 删除索引模板
*/
async indexDeleteTemplateRaw(requestParameters: IndexDeleteTemplateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.id === null || requestParameters.id === undefined) {
throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling indexDeleteTemplate.');
}
const queryParameters: any = {};
if (requestParameters.id !== undefined) {
queryParameters['id'] = requestParameters.id;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/templates`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 删除索引模板
*/
async indexDeleteTemplate(requestParameters: IndexDeleteTemplateRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.indexDeleteTemplateRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 导出索引数据
*/
async indexExportRaw(requestParameters: IndexExportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexExport.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexExport.');
}
if (requestParameters.format === null || requestParameters.format === undefined) {
throw new runtime.RequiredError('format','Required parameter requestParameters.format was null or undefined when calling indexExport.');
}
const queryParameters: any = {};
if (requestParameters.format !== undefined) {
queryParameters['format'] = requestParameters.format;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/export`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 导出索引数据
*/
async indexExport(requestParameters: IndexExportRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.indexExportRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 刷新索引数据,主要用于将内存中的索引数据写入磁盘
*/
async indexFlushRaw(requestParameters: IndexFlushRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<boolean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexFlush.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexFlush.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/flush`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.TextApiResponse(response) as any;
}
/**
* 刷新索引数据,主要用于将内存中的索引数据写入磁盘
*/
async indexFlush(requestParameters: IndexFlushRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<boolean> {
const response = await this.indexFlushRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 写入设置信息到索引
*/
async indexFlushSettingsRaw(requestParameters: IndexFlushSettingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<object>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexFlushSettings.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexFlushSettings.');
}
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling indexFlushSettings.');
}
if (requestParameters.password === null || requestParameters.password === undefined) {
throw new runtime.RequiredError('password','Required parameter requestParameters.password was null or undefined when calling indexFlushSettings.');
}
const queryParameters: any = {};
if (requestParameters.type !== undefined) {
queryParameters['type'] = requestParameters.type;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const consumes: runtime.Consume[] = [
{ contentType: 'application/x-www-form-urlencoded' },
];
// @ts-ignore: canConsumeForm may be unused
const canConsumeForm = runtime.canConsumeForm(consumes);
let formParams: { append(param: string, value: any): any };
let useForm = false;
if (useForm) {
formParams = new FormData();
} else {
formParams = new URLSearchParams();
}
if (requestParameters.password !== undefined) {
formParams.append('password', requestParameters.password as any);
}
const response = await this.request({
path: `/indices/{app}/{index}/settings`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'PUT',
headers: headerParameters,
query: queryParameters,
body: formParams,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 写入设置信息到索引
*/
async indexFlushSettings(requestParameters: IndexFlushSettingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<object> {
const response = await this.indexFlushSettingsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取单个索引详情
*/
async indexGetRaw(requestParameters: IndexGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexBean>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexGet.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexGet.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexBeanFromJSON(jsonValue));
}
/**
* 获取单个索引详情
*/
async indexGet(requestParameters: IndexGetRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexBean> {
const response = await this.indexGetRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取索引的爬虫任务的爬取日志
*/
async indexGetCrawlerLogsRaw(requestParameters: IndexGetCrawlerLogsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CrawlerLogs>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexGetCrawlerLogs.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexGetCrawlerLogs.');
}
const queryParameters: any = {};
if (requestParameters.from !== undefined) {
queryParameters['from'] = requestParameters.from;
}
if (requestParameters.size !== undefined) {
queryParameters['size'] = requestParameters.size;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/crawler-logs`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => CrawlerLogsFromJSON(jsonValue));
}
/**
* 获取索引的爬虫任务的爬取日志
*/
async indexGetCrawlerLogs(requestParameters: IndexGetCrawlerLogsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CrawlerLogs> {
const response = await this.indexGetCrawlerLogsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取索引的爬虫任务设定
*/
async indexGetCrawlerTaskRaw(requestParameters: IndexGetCrawlerTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<CrawlerTask>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexGetCrawlerTask.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexGetCrawlerTask.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/crawler-settings`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => CrawlerTaskFromJSON(jsonValue));
}
/**
* 获取索引的爬虫任务设定
*/
async indexGetCrawlerTask(requestParameters: IndexGetCrawlerTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<CrawlerTask> {
const response = await this.indexGetCrawlerTaskRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取索引设置信息
*/
async indexGetFilterSettingsRaw(requestParameters: IndexGetFilterSettingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<string>>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexGetFilterSettings.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexGetFilterSettings.');
}
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling indexGetFilterSettings.');
}
const queryParameters: any = {};
if (requestParameters.type !== undefined) {
queryParameters['type'] = requestParameters.type;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/filter-settings`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 获取索引设置信息
*/
async indexGetFilterSettings(requestParameters: IndexGetFilterSettingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<string>> {
const response = await this.indexGetFilterSettingsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取索引设置信息
*/
async indexGetSettingsRaw(requestParameters: IndexGetSettingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexSettings>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexGetSettings.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexGetSettings.');
}
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling indexGetSettings.');
}
const queryParameters: any = {};
if (requestParameters.type !== undefined) {
queryParameters['type'] = requestParameters.type;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/settings`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexSettingsFromJSON(jsonValue));
}
/**
* 获取索引设置信息
*/
async indexGetSettings(requestParameters: IndexGetSettingsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexSettings> {
const response = await this.indexGetSettingsRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取应用的索引列表
*/
async indexListRaw(requestParameters: IndexListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<IndexBean>>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexList.');
}
const queryParameters: any = {};
if (requestParameters.stat !== undefined) {
queryParameters['stat'] = requestParameters.stat;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => jsonValue.map(IndexBeanFromJSON));
}
/**
* 获取应用的索引列表
*/
async indexList(requestParameters: IndexListRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<IndexBean>> {
const response = await this.indexListRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取所有可用的索引模板
*/
async indexListTemplatesRaw(requestParameters: IndexListTemplatesRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexTemplates>> {
const queryParameters: any = {};
if (requestParameters.from !== undefined) {
queryParameters['from'] = requestParameters.from;
}
if (requestParameters.size !== undefined) {
queryParameters['size'] = requestParameters.size;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/templates`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexTemplatesFromJSON(jsonValue));
}
/**
* 获取所有可用的索引模板
*/
async indexListTemplates(requestParameters: IndexListTemplatesRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexTemplates> {
const response = await this.indexListTemplatesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取目标网站内容预览
*/
async indexPrefetchRaw(requestParameters: IndexPrefetchRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<object>>> {
if (requestParameters.type === null || requestParameters.type === undefined) {
throw new runtime.RequiredError('type','Required parameter requestParameters.type was null or undefined when calling indexPrefetch.');
}
if (requestParameters.url === null || requestParameters.url === undefined) {
throw new runtime.RequiredError('url','Required parameter requestParameters.url was null or undefined when calling indexPrefetch.');
}
const queryParameters: any = {};
if (requestParameters.type !== undefined) {
queryParameters['type'] = requestParameters.type;
}
if (requestParameters.url !== undefined) {
queryParameters['url'] = requestParameters.url;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/crawler`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse<any>(response);
}
/**
* 获取目标网站内容预览
*/
async indexPrefetch(requestParameters: IndexPrefetchRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Array<object>> {
const response = await this.indexPrefetchRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 重建索引数据
*/
async indexRebuildRaw(requestParameters: IndexRebuildRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexTask>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexRebuild.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexRebuild.');
}
if (requestParameters.indexRebuildForm === null || requestParameters.indexRebuildForm === undefined) {
throw new runtime.RequiredError('indexRebuildForm','Required parameter requestParameters.indexRebuildForm was null or undefined when calling indexRebuild.');
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/json';
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/rebuild`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: IndexRebuildFormToJSON(requestParameters.indexRebuildForm),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexTaskFromJSON(jsonValue));
}
/**
* 重建索引数据
*/
async indexRebuild(requestParameters: IndexRebuildRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexTask> {
const response = await this.indexRebuildRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取重建索引任务的详情
*/
async indexRebuildTaskRaw(requestParameters: IndexRebuildTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<IndexTask>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexRebuildTask.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexRebuildTask.');
}
if (requestParameters.taskId === null || requestParameters.taskId === undefined) {
throw new runtime.RequiredError('taskId','Required parameter requestParameters.taskId was null or undefined when calling indexRebuildTask.');
}
const queryParameters: any = {};
if (requestParameters.taskId !== undefined) {
queryParameters['task_id'] = requestParameters.taskId;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;
const tokenString = await token("TokenAuth", []);
if (tokenString) {
headerParameters["Authorization"] = `Bearer ${tokenString}`;
}
}
const response = await this.request({
path: `/indices/{app}/{index}/rebuild`.replace(`{${"app"}}`, encodeURIComponent(String(requestParameters.app))).replace(`{${"index"}}`, encodeURIComponent(String(requestParameters.index))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => IndexTaskFromJSON(jsonValue));
}
/**
* 获取重建索引任务的详情
*/
async indexRebuildTask(requestParameters: IndexRebuildTaskRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<IndexTask> {
const response = await this.indexRebuildTaskRaw(requestParameters, initOverrides);
return await response.value();
}
/**
* 获取日志索引的统计信息(主要是每日的日志数量)
*/
async indexStatLogsRaw(requestParameters: IndexStatLogsRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Array<object>>> {
if (requestParameters.app === null || requestParameters.app === undefined) {
throw new runtime.RequiredError('app','Required parameter requestParameters.app was null or undefined when calling indexStatLogs.');
}
if (requestParameters.index === null || requestParameters.index === undefined) {
throw new runtime.RequiredError('index','Required parameter requestParameters.index was null or undefined when calling indexStatLogs.');
}
if (requestParameters.interval === null || requestParameters.interval === undefined) {
throw new runtime.RequiredError('interval','Required parameter requestParameters.interval was null or undefined when calling indexStatLogs.');
}
const queryParameters: any = {};
if (requestParameters.startDate !== undefined) {
queryParameters['start_date'] = (requestParameters.startDate as any).toISOString().substr(0,10);
}
if (requestParameters.endDate !== undefined) {
queryParameters['end_date'] = (requestParameters.endDate as any).toISOString().substr(0,10);
}
if (requestParameters.interval !== undefined) {
queryParameters['interval'] = requestParameters.interval;
}
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.accessToken) {
const token = this.configuration.accessToken;