1. php
由于xdua.com接口访问需要一些敏感信息:key,secret。为了防止泄露这些信息。一般都需要开发者自己部署后台服务来保存key,secret。nodejs就是一个合适的选项。在这种模式下, 开发者开发自己的前端公开api. 然后重映射到xdua.com接口。
github地址:https://github.com/lovearthhome/lovearth-xdua-nodejs-sdk 本SDK是从阿里云自己的nodejs-sdk包装而来的.
测试echo接口
'use strict';
const co = require('co');
const Client = require('aliyun-api-gateway').Client;
const client = new Client('APP的Key','APP的Secret');
const host = "http://api.xdua.com";
co(function* () {
var url = host+'/echo';
var result = yield client.get(url, {
headers: {
accept: 'application/json'
}
});
console.log(JSON.stringify(result));
});
用户登陆接口。登陆成功后,要把token保存起来.
co(function* () {
var url = host+'/login';
var result = yield client.post(url, {
headers: {
'accept': 'application/json',
'content-type':'application/x-www-form-urlencoded; charset=UTF-8' ,
'dua':test_dua,
'apiv':'1.0.0'
},
signHeaders: {
'X-Ca-Stage':'RELEASE',
},
data: {
by : "tel",
ustr: "+86-15810419011",
pwd : "a906449d5769fa7361d7ecc6aa3f6d28"
}
});
var resp = result;
console.log(resp);
var resp_status = resp["status"];
var resp_reason = resp["reason"];
var resp_result = resp["result"];
var resp_token = resp_result["token"];
});
获取某个用户的详情:用户需要实现token才可以接入"用户详情"接口, 所以我们需要先登陆,然后把获取的token给予"用户详情"的接口head.
co(function* () {
var url = host+'/login';
var result = yield client.post(url, {
headers: {
'accept': 'application/json',
'content-type':'application/x-www-form-urlencoded; charset=UTF-8' ,
'dua':test_dua,
'apiv':'1.0.0'
},
signHeaders: {
'X-Ca-Stage':'RELEASE',
},
data: {
by : "tel",
ustr: "+86-15810419011",
pwd : "a906449d5769fa7361d7ecc6aa3f6d28"
}
});
var resp = result;
console.log(resp);
var resp_status = resp["status"];
var resp_reason = resp["reason"];
var resp_result = resp["result"];
if (resp_status == 0){
var resp_token = resp_result["token"];
var result = yield client.get("http://api.xdua.com/user/98f13708210194c475687be6106a3b84", {
headers: {
accept: 'application/json',
'dua':test_dua,
'apiv':"1.0.0",
'token':resp_token
}
});
console.log(result);
}
});