您当前的位置: 首页 >  网络
  • 0浏览

    0关注

    674博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Nodejs访问网络并解析返回的json

沙漠一只雕得儿得儿 发布时间:2022-03-11 22:06:53 ,浏览量:0

一:解析本地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); 
	
})

是不是很简单呢O(∩_∩)O

关注
打赏
1657159701
查看更多评论
立即登录/注册

微信扫码登录

0.0390s