'use strict';
|
/**
|
* Copyright (c) 2017 Baidu.com, Inc. All Rights Reserved
|
*
|
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
|
* the License. You may obtain a copy of the License at
|
*
|
* http://www.apache.org/licenses/LICENSE-2.0
|
*
|
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
|
* an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
|
* specific language governing permissions and limitations under the License.
|
*
|
* @file AipEasyDL.js
|
* @author baidu aip
|
*/
|
|
|
|
const BaseClient = require('./client/baseClient');
|
|
const RequestInfo = require('./client/requestInfo');
|
|
const HttpClient = require('./http/httpClientExt');
|
|
const objectTools = require('./util/objectTools');
|
|
const METHOD_POST = 'POST';
|
|
const DETECT_PATH = '/rest/2.0/face/v3/detect';
|
const SEARCH_PATH = '/rest/2.0/face/v3/search';
|
const USER_ADD_PATH = '/rest/2.0/face/v3/faceset/user/add';
|
const USER_UPDATE_PATH = '/rest/2.0/face/v3/faceset/user/update';
|
const FACE_DELETE_PATH = '/rest/2.0/face/v3/faceset/face/delete';
|
const USER_GET_PATH = '/rest/2.0/face/v3/faceset/user/get';
|
const FACE_GETLIST_PATH = '/rest/2.0/face/v3/faceset/face/getlist';
|
const GROUP_GETUSERS_PATH = '/rest/2.0/face/v3/faceset/group/getusers';
|
const USER_COPY_PATH = '/rest/2.0/face/v3/faceset/user/copy';
|
const USER_DELETE_PATH = '/rest/2.0/face/v3/faceset/user/delete';
|
const GROUP_ADD_PATH = '/rest/2.0/face/v3/faceset/group/add';
|
const GROUP_DELETE_PATH = '/rest/2.0/face/v3/faceset/group/delete';
|
const GROUP_GETLIST_PATH = '/rest/2.0/face/v3/faceset/group/getlist';
|
const PERSON_VERIFY_PATH = '/rest/2.0/face/v3/person/verify';
|
const VIDEO_SESSIONCODE_PATH = '/rest/2.0/face/v1/faceliveness/sessioncode';
|
|
|
/**
|
* AipEasyDL类
|
*
|
* @class
|
* @extends BaseClient
|
* @constructor
|
* @param {string} appid appid.
|
* @param {string} ak access key.
|
* @param {string} sk security key.
|
*/
|
class AipEasyDL extends BaseClient {
|
constructor(appId, ak, sk) {
|
super(appId, ak, sk);
|
}
|
commonImpl(param) {
|
let httpClient = new HttpClient();
|
let apiUrl = param.targetPath;
|
delete param.targetPath;
|
let requestInfo = new RequestInfo(apiUrl,
|
param, METHOD_POST);
|
return this.doRequest(requestInfo, httpClient);
|
}
|
requestImage(url, image, options) {
|
let param = {
|
image: image,
|
targetPath: url
|
};
|
return this.commonImpl(objectTools.merge(param, options));
|
}
|
requestSound(url, sound, options) {
|
let param = {
|
sound: sound,
|
targetPath: url
|
};
|
return this.commonImpl(objectTools.merge(param, options));
|
}
|
}
|
|
module.exports = AipEasyDL;
|