paas-node-sdk
Version:
PAAS NODE SDK
51 lines (46 loc) • 1.56 kB
JavaScript
/**
* Created by donz on 2017/3/16.
*/
var Promsie = require('bluebird');
var request = require('request');
Promsie.promisifyAll(request)
var auth = require('./authTools');
var config = require('../config/config');
var Result = require('../tools/Result');
var SDK_BASE_URL = config.base_url;
function requestWrapper(funcName, data) {
if (!data){
return Promise.reject(new Result(Result.GENERIC_ERR,'参数未定义'))
}
if (!data.account){
return Promise.reject(new Result(Result.GENERIC_ERR,'请检查参数account'))
}
if (!data.token){
return Promise.reject(new Result(Result.GENERIC_ERR,'请检查参数token'))
}
var token = data.token;
var account = data.account;
var timestamp = new Date().getTime();
var authen = auth.genAuthen(account, timestamp);
var sig = auth.genSig(account, token, timestamp);
var headers = {
Authorization: authen
};
var options = {
method: 'POST',
uri: SDK_BASE_URL +account+'/'+ funcName + '?sign=' + sig,
headers: headers,
json: true,
body: data
};
console.log('sdk ->' + funcName, options);
return request.postAsync(options).then(function (result) {
console.log('sdk result->'+JSON.stringify(result))
var body = result.body;
return Promise.resolve(body)
}, function (err) {
console.log(JSON.stringify(err))
return Promise.reject(err)
});
}
exports.requestWrapper = requestWrapper;