我正在使用 API。我想做的是将姓氏打印到 html 文档上。
所以我能够控制台记录响应给我的列表对象,并循环查找姓氏。但这就是我卡住的地方,如何打印到文档?我是在 app.get 中编写函数,还是可以从 HTML 文档访问数据?
有点迷茫,任何帮助都会很棒。
谢谢。
var express = require('express');
var app = express();
var nationbuilder = require('nationbuilder');
var OAuth2 = nationbuilder.auth.OAuth2;
var async = require('async');
var oauth2Client = new OAuth2();
var sites = nationbuilder.sites('v1');
var people = nationbuilder.people('v1');
//look for resources.
app.use(express.static(__dirname + '/public')) ;
//nationbuilder config.
oauth2Client.setCredentials({
access_token: 'XXXXXXX'
});
nationbuilder.options({
params: {
slug: 'XXXXXXXX',
},
auth: oauth2Client
});
people.list(function(err , response){
for( var i = 0; i < response.results.length; i++){
var last_name = response.results[i].last_name;
console.log(last_name)
}
});
app.get('/', function(request, response){
response.sendfile('index.html');
});
app.listen(3000)
最佳答案
这里有几个选项。您现在所做的只是发送不允许修改网页的静态 HTML 文件。
选项一(可能是您最好的选择)是使用 HTML 渲染引擎,例如 Pug . Others are available .
基本用法(从上面的链接复制):
index.pug
html
head
title= title
body
h1= message
index.js
app.get('/', function (req, res) {
res.render('index', { title: 'Hey', message: 'Hello there!'});
});
生成以下 HTML:
<html>
<head>
<title>Hey</title>
</head>
<body>
Hello there!
</body>
</html>
另一个需要更多工作的选项是使用 RESTful API。您将编写一组改变状态的端点。然后在您的界面中,您将让 Javascript 调用这些端点并根据结果更改 DOM。
就我个人而言,我会推荐模板引擎,因为它完全适合您的需求,它的工作量更少,并且接近您现在尝试做的事情。
* 免责声明:我最近需要使用 HTML 模板引擎,所以我选择了 Pug。纯粹是因为我知道它的存在。我不熟悉任何替代方案,因此我没有提及任何其他方案。
关于javascript - 在 Node js中使用请求数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37768166/