enr*_*nga 14 api node.js express onesignal
您好我一直在尝试在我的仪表板上实现OneSignal API,我想知道是否可以在快速服务器内进行API外部调用.
这是一个例子:
var sendNotification = function(data) {
var headers = {
"Content-Type": "application/json; charset=utf-8",
"Authorization": "Basic NGEwMGZmMjItY2NkNy0xMWUzLTk5ZDUtMDAwYzI5NDBlNjJj"
};
var options = {
host: "onesignal.com",
port: 443,
path: "/api/v1/notifications",
method: "POST",
headers: headers
};
var https = require('https');
var req = https.request(options, function(res) {
res.on('data', function(data) {
console.log("Response:");
console.log(JSON.parse(data));
});
});
req.on('error', function(e) {
console.log("ERROR:");
console.log(e);
});
req.write(JSON.stringify(data));
req.end();
};
Run Code Online (Sandbox Code Playgroud)
这是app路线
app.post('/path', function(req, res){
var message = {
app_id: "5eb5a37e-b458-11e3-ac11-000c2940e62c",
contents: {"en": "English Message"},
included_segments: ["All"]
};
sendNotification(message);
});
Run Code Online (Sandbox Code Playgroud)
谢谢!
jfr*_*d00 15
我想知道是否有可能在快递服务器内进行API外部调用.
当然,您可以从node.js应用程序中联系任何外部服务器,http.request()就像您正在显示的那样,或者像请求模块那样构建在其上的一个更高级别的模块.
以下是请求模块主页的一个简单示例:
const request = require('request');
request('http://www.google.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(body) // Show the HTML for the Google homepage.
}
});
Run Code Online (Sandbox Code Playgroud)
或者,使用承诺:
const rp = require('request-promise');
rp('http://www.google.com').then(body => {
console.log(body);
}).catch(err => {
console.log(err);
});
Run Code Online (Sandbox Code Playgroud)
小智 9
你可以使用 Axios 客户端,因为 Axios 是一个基于 Promise 的浏览器和 node.js 的 HTTP 客户端。
在处理需要更复杂的事件链的代码时,使用 Promise 是一个很大的优势。编写异步代码可能会令人困惑,而 Promise 是解决此问题的几种解决方案之一。
首先使用在您的应用程序中安装 Axios npm install axios --save
然后你可以使用这个代码
const axios = require('axios');
axios.get('api-url')
.then(response => {
console.log(response.data.status);
// console.log(response.data);
res.send(response.data.status);
})
.catch(error => {
console.log(error);
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
26861 次 |
| 最近记录: |