gpt4 book ai didi

javascript - 从路由目录中的 js 文件在 Node.js Express 中进行 REST 调用

转载 作者:行者123 更新时间:2023-12-03 07:39:36 25 4
gpt4 key购买 nike

我正在尝试对 API 进行 REST 调用并在 View 上显示返回的数据,但我当前的代码似乎无法正常工作。我对 Node.js 非常陌生,所以我非常感谢一些帮助。

这是index.js 的样子:

var router = require('express').Router();

function GetCompanyInformation() {
var request = require('request');
request('http://table.finance.yahoo.com/table.csv?s=orcl&a=0&b1&c=2010&d=0&e=1&f=2011&g=d&y=0&z=orcl', function (error, response, data) {
if (!error && response.statusCode == 200) {
return data;
}
return 'An error has occurred.'
})
}

/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', {
title: 'Express',
data : GetCompanyInformation()
});
});

module.exports = router;

这是我的 View index.hbs( Handlebars ):

<h1>{{ title }}</h1>
<h1>{{ data }}</h1>

标题恢复正常。我只是不确定如何从其余调用中传递数据。或者如果我做得正确的话。我的主要目标是进行休息调用并将返回的数据放入数组中,然后将数组传递给 View 。

我添加了一个雅虎财经休息电话只是为了举例。

非常感谢任何帮助!

最佳答案

欢迎使用 Nodejs,这里的一切都是异步的,这意味着你必须等待函数完成才能做某事,通常我们使用回调风格(例如其他选项是 Promise),代码示例:

function GetCompanyInformation(callback) {
var request = require('request');
request('http://table.finance.yahoo.com/table.csv?s=orcl&a=0&b1&c=2010&d=0&e=1&f=2011&g=d&y=0&z=orcl', function (error, response, data) {
if (!error && response.statusCode == 200) {
return callback(null,data);
}
return callback('An error has occurred.',null);
})
}

/* GET home page. */
router.get('/', function(req, res, next) {
GetCompanyInformation(function(err,data){
//if(err) Manage error ; console.log(err)
//else
console.log(data)
res.render('index', {
title: 'Express',
data : data
});
});
});

关于javascript - 从路由目录中的 js 文件在 Node.js Express 中进行 REST 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35464283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com