@re-ai/volc-knowledge
Version:
火山引擎知识库接口接入SDK
37 lines (36 loc) • 1.25 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.signRequest = signRequest;
const openapi_1 = require("@volcengine/openapi");
/**
* 火山引擎API签名工具
* @param options 签名参数
* @param accessKeyId 用户AK
* @param secretKey 用户SK
* @returns 签名后的请求头
*/
function signRequest(options, accessKeyId, secretKey) {
const ak = accessKeyId || process.env.REAI_VOLC_ACCESS_KEY_ID;
const sk = secretKey || process.env.REAI_VOLC_SECRET_KEY;
const region = options.region || process.env.REAI_VOLC_REGION || 'cn-beijing';
if (!ak || !sk) {
throw new Error('Missing credentials: either provide accessKeyId/secretKey or set VOLC_ACCESS_KEY_ID/VOLC_SECRET_KEY environment variables');
}
const requestObj = {
region: region,
headers: {
Accept: 'application/json',
'Content-type': 'application/json'
},
method: options.method,
body: options.body,
pathname: options.pathname,
params: options.params
};
const signer = new openapi_1.Signer(requestObj, 'air');
signer.addAuthorization({
accessKeyId: ak,
secretKey: sk
});
return requestObj.headers;
}