我正在尝试使用背包连接 API 将徽章推送到用户的背包。开放徽章文档中的示例使用 node.js。
我的问题是:我必须使用 node.js 还是可以在 php 中编写与此等效的东西?我不是要求有人写它,只是说:
- 如果有可能。
- 如果我没有抓住重点,或者有根本的误解。
我在 php 和 js 方面有一些编码经验,并且已经成功地使用了其他 api(例如,linkedin),由于缺乏实际示例或有用的信息,我发现这个很困难(有很多概念性的绒毛谈话,但是几乎没有实现示例的方式)。
moz 文档中的 node.js 示例如下:
var assertionData = querystring.stringify({
badge: 'http://yoursite.com/badge-assertion.json'
});
var requestOptions = {
host : 'backpack.openbadges.org',//adjust for your api root
path : '/api/issue',
method : 'POST',
headers: { 'Authorization': 'Bearer ' + b64enc('your-access-token'),
'Content-Type': 'application/json',
'Content-Length': Buffer.byteLength(assertionData)
}
};
var postRequest = http.request(requestOptions, function(pushResponse) {
var response = [];
pushResponse.setEncoding('utf8');
//store data
pushResponse.on('data', function (responseData) {
response.push(responseData);
});
pushResponse.on('end', function(){
var pushData=JSON.parse(response.join(''));
//...
});
});
postRequest.on('error', function(e) {
console.error(e);
});
// post the data
postRequest.write(assertionData);
postRequest.end();
我可以忘记 node.js 并通过 PHP 来做这件事吗?
谢谢你的帮助!