从 Unirest Node 发送响应获取请求函数到 Jade 视图
Send response from Unirest Node get request function to Jade view
我正在构建我的第一个 Node 应用程序,我遇到了 unirest.get 请求的问题。我的项目是使用 Node、Express、Node 和 Act On API.
构建的
我正在使用express generator快速获取地面工程
我遇到的问题是我正在努力将响应传递到我的路由文件。我正在请求 API 的 Act 列表,该列表正确返回,因为我在登录时可以在控制台中看到响应,但无法将数据传递到模板。
function getTheList(callback) {
var Request = unirest.get('https://restapi.actonsoftware.com/api/1/list/l-0001')
.headers({
'Accept': 'application/json',
'Authorization': 'Bearer ' + access_token
})
.query({
"count": 20,
"fields": "First Name;Last Name;Email;"
})
.end(function(response, error) {
var data = response.body.data;
if (!error && response.statusCode == 200) {
callback(returnData(data));
} else {
console.log('Failed response');
}
});
}
function returnData(theData){
console.log(theData);
return theData;
}
module.exports.get = getTheList;
我的路由文件中的代码用于获取此信息。
var masterList = require('../acton/getMasterList');
var myListVar = masterList.get();
对于我做错的任何帮助,将不胜感激。
您描述的 getTheList
函数需要一个回调,当您这样调用它时您没有提供回调 masterList.get()
。
因此您可以执行以下操作:
masterList.get(function(data){
//you can access data here.
})
或者,在 getTheList
实现中完全取消回调。
.end(function(response, error) {
var data = response.body.data;
if (!error && response.statusCode == 200) {
returnData(data); //Just do this may be.
} else {
console.log('Failed response');
}
});
我正在构建我的第一个 Node 应用程序,我遇到了 unirest.get 请求的问题。我的项目是使用 Node、Express、Node 和 Act On API.
构建的我正在使用express generator快速获取地面工程
我遇到的问题是我正在努力将响应传递到我的路由文件。我正在请求 API 的 Act 列表,该列表正确返回,因为我在登录时可以在控制台中看到响应,但无法将数据传递到模板。
function getTheList(callback) {
var Request = unirest.get('https://restapi.actonsoftware.com/api/1/list/l-0001')
.headers({
'Accept': 'application/json',
'Authorization': 'Bearer ' + access_token
})
.query({
"count": 20,
"fields": "First Name;Last Name;Email;"
})
.end(function(response, error) {
var data = response.body.data;
if (!error && response.statusCode == 200) {
callback(returnData(data));
} else {
console.log('Failed response');
}
});
}
function returnData(theData){
console.log(theData);
return theData;
}
module.exports.get = getTheList;
我的路由文件中的代码用于获取此信息。
var masterList = require('../acton/getMasterList');
var myListVar = masterList.get();
对于我做错的任何帮助,将不胜感激。
您描述的 getTheList
函数需要一个回调,当您这样调用它时您没有提供回调 masterList.get()
。
因此您可以执行以下操作:
masterList.get(function(data){
//you can access data here.
})
或者,在 getTheList
实现中完全取消回调。
.end(function(response, error) {
var data = response.body.data;
if (!error && response.statusCode == 200) {
returnData(data); //Just do this may be.
} else {
console.log('Failed response');
}
});