我创建了一个 Node.js/express 服务器来获取调用 API。API 返回一个 json 数据。如何将收到的 JSON 发送到本地 javascript(客户端-服务器)?我想获取这个 JSON,发送到我的本地客户端(如果这是选项,则使用 ajax 调用),遍历它并将其附加到我的 DOM!
应用程序.js
var express = require('express');
var router = express.Router();
var request = require("request");
let name, value, bodyData;
var options = { method: 'GET',
url: 'https://api.example.com/data1',
qs:
{
valueType: 'MAXIMUM'
},
headers:
{
authorization: 'ABC123456',
accept: 'application/json; charset=utf-8' } };
request(options, function (error, response, body) {
if (error) throw new Error(error);
bodyData = body;
});
router.get('/', function(req, res, next) {
res.render('home', {data: bodyData});
});
module.exports = router;
应用程序.ejs
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Items</title>
</head>
<body>
<div id="itemsList">
<h2>List of available items: </h2>
</div>
</body>
</html>
脚本.js
$(document).ready(function(){
$.ajax({
type: "GET",
url: "http://localhost:3000/",
contentType: "application/json"
}).done(function(data){
for(var i =1; i<= 10; i++){
$('#itemsList').append('<div id="r'+ i +'"></div>')
}
})
});
如果你data
是一个数组,那么你应该这样写循环:
$(document).ready(function(){
$.ajax({
type: "GET",
url: "http://localhost:3000/",
contentType: "application/json"
}).done(function(data){
for(var i =1; i<data.length; i++){
$('#itemsList').append('<div id="r'+ data[i] +'">'+data[i]+'</div>')
}
})
});
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句