UNPKG

rcs-sdk

Version:

封装客户端与平台间的相互调用功能。

67 lines 3.02 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.get = void 0; const debug = require('debug')('rcssdk:auth:srvapi'); const util_1 = require("../util"); const request_1 = require("../util/request"); function get(username, password) { return __awaiter(this, void 0, void 0, function* () { let rst; if ((0, util_1.runAsMock)('auth')) { const { mockFilePathGetToken } = this.config; if (!mockFilePathGetToken) return Promise.reject('没有指定模拟数据获取位置'); rst = yield (0, util_1.getMockData)(mockFilePathGetToken); if (!rst) return Promise.reject(`没有在指定位置[${mockFilePathGetToken}]获取模拟数据`); } else { const { authApiServer, authApiTimeout, authApiPin } = this.config; const apiurl = `${authApiServer ? authApiServer : ''}/auth/authenticate`; const options = { timeout: authApiTimeout, }; debug(`通过[${apiurl}]获取token`); try { if (this.config.authType === 'apply') { options.params = { appkey: username, secret: password, }; rst = yield request_1.default.get(apiurl, options); } else { const posted = { username: username, password: password, }; if (authApiPin) posted.pin = authApiPin; options.headers = { 'Content-Type': 'application/json;charset=utf-8' }; rst = yield request_1.default.post(apiurl, posted, options); } } catch (e) { return Promise.reject(`通过[${apiurl}]获取token异常: ${e.message}`); } } if (rst['code'] === 0) { return Promise.resolve({ accessToken: rst['result'].access_token, expires: rst['result'].expire_in, }); } return Promise.reject(`获取token失败:${rst['msg']}`); }); } exports.get = get; //# sourceMappingURL=token.js.map