node.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > node.js > Node访问网络并返回json

Nodejs访问网络并解析返回的json的实现方法

作者:沙漠一只雕得儿得儿

本文主要介绍了Nodejs访问网络并解析返回的json的实现方法,文中根据实例编码详细介绍的十分详尽,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

一:解析本地Json文件

sample.json

{
  "api": "mtop.common.getTimestamp",
  "v": "*",
  "ret": [
    "SUCCESS::接口调用成功"
  ],
  "data": {
    "t": "1647006040138"
  }
}

jsonParse.js:

// 引入文件系统模块
var fs = require('fs'); 
 
// 读取文件sample.json文件
fs.readFile('sample.json', 
    // 读取文件完成时调用的回调函数
    function(err, data) {  
        // json数据
        var jsonData = data; 
 
        // 解析json
        var jsonParsed = JSON.parse(jsonData); 
 
        // 访问元素
		console.log(jsonParsed.data.t); 
 });

二:访问网络

我们拿免费的获取服务端时间为例:访问接口如下:http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp

在postman中模拟下请求:

 这个请求体的参数key:api,value是 mtop.common.getTimestamp

我们利用request库进行post的网络请求,首先安装下这个request库:

使用命令,将库安装即可

npm install request --save -dev

网络请求如下 :

var request = require('request');
 
request.post({url:'http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp', form:{
    "api": "mtop.common.getTimestamp",
}}, function(error, response, body) {
    //console.log(error,response,body)
    console.log(body)
})

执行该js文件,可以看到成功获取到时间body的返回值:

 Json如下:

{ "api": "mtop.common.getTimestamp", "v": "*", "ret": [ "SUCCESS::接口调用成功" ], "data": { "t": "1647006040138" }}

最后我们把解析json的代码也补充上,就可以获取到我们需要的服务器时间毫秒值了:

var request = require('request');
 
request.post({url:'http://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp', form:{
    "api": "mtop.common.getTimestamp",
}}, function(error, response, body) {
    //console.log(error,response,body)
    console.log(body)
	
	// 解析json
	var jsonParsed = JSON.parse(body); 
 
	// 访问元素
	console.log(jsonParsed.data.t); 
	
})

到此这篇关于Nodejs访问网络并解析返回的json的实现方法的文章就介绍到这了,更多相关Node访问网络并返回json内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文