详解Nodejs get获取远程服务器接口数据


Posted in NodeJs onMarch 26, 2019

本文实例为大家分享了Nodejs get获取远程服务器接口数据的具体代码,供大家参考,具体内容如下

1.GET模块:_get.js

/**
 * Created by jinx on 7/7/17.
 */
var http = require('http');

module.exports = {
  /**
  * 测试获取所有的区域
  * /
  locations: function (cb) {
    http.get('http://wx.xx.com/locations', function (res) {
      res.setEncoding('utf8');
      var rawData = '';
      res.on('data', function (chunk) {
        rawData += chunk;
      });
      res.on('end', function () {
        try {
          const parsedData = JSON.parse(rawData);
          console.log(parsedData);
          cb(parsedData);
        } catch (e) {
        console.error(e.message);
          cb('error');
        }
      });
    });
  }
}

2.路由端调用:routes.js

var _get = require('../modules/_get');
module.exports = function (app, _dirpath) {
  app.get('/get', function (req, res) {
    _get.locations(function (data) {
      res.writeHead(200, {"Content-Type": "application/json"});
      res.write(JSON.stringify(data));
      res.end();
    });
  });
}

3.服务启动入口:

/**
 * Created by jinx on 7/3/17.
 */
var express = require('express')
  , routes = require('./routes/routes')
  , http = require('http');

var app = express();

app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
/**
 * 静态文件目录
 */
app.use(express.static('public'));
/**
 * 加载路由配置
 */
routes(app,__dirname);
/**
 * 启动服务器
 */
http.createServer(app).listen(app.get('port'), function(){
 console.log("服务器已经启动了" + app.get('port'));
});

4.项目目录如下:

详解Nodejs get获取远程服务器接口数据

5.调用js get.js:

/**
 * Created by jinx on 7/7/17.
 */
var _i;
$(function () {
  _i = layer.open({type: 2});
  $.ajax({
    url: '/get',
    type: 'get',
    dataType: 'json',
    success: function (res) {
      if (res != null)
        layer.close(_i);
      new Vue({
        el: '.main',
        data: {items: res.params}
      });
    }
  })
})

6.调用页面 get.html:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
  <title>http get</title>
  <link href="https://cdn.bootcss.com/layer/3.0.1/mobile/need/layer.min.css" rel="external nofollow" rel="stylesheet">
  <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" rel="external nofollow" rel="stylesheet">
  <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="external nofollow" rel="stylesheet">
  <link href="css/style.css" rel="external nofollow" rel="stylesheet">
</head>
<body>
<table class="table main">
  <thead>
  <tr>
    <td>ID</td>
    <td>Name</td>
  </tr>
  </thead>
  <tbody>
  <tr v-for="item in items" >
    <td v-text="item.id"></td>
    <td v-text="item.name"></td>
  </tr>
  </tbody>
</table>
<a href="/" rel="external nofollow" class="btn btn-info width-100">返回首页</a>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.bootcss.com/layer/3.0.1/mobile/layer.js"></script>
<script src="https://cdn.bootcss.com/vue/2.3.4/vue.min.js"></script>
<script src="js/get.js"></script>
</body>
</html>

以上所述是小编给大家介绍的Nodejs get获取远程服务器接口数据详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

NodeJs 相关文章推荐
nodejs获取本机内网和外网ip地址的实现代码
Jun 01 NodeJs
基于NodeJS的前后端分离的思考与实践(六)Nginx + Node.js + Java 的软件栈部署实践
Sep 26 NodeJs
Nodejs下用submit提交表单提示cannot post错误的解决方法
Nov 21 NodeJs
详解nodejs 文本操作模块-fs模块(二)
Dec 22 NodeJs
详解Nodejs之静态资源处理
Jun 05 NodeJs
详解使用PM2管理nodejs进程
Oct 24 NodeJs
nodejs实现截取上传视频中一帧作为预览图片
Dec 10 NodeJs
详解nodeJs文件系统(fs)与流(stream)
Jan 24 NodeJs
nodejs实现连接mongodb数据库的方法示例
Mar 15 NodeJs
Nodejs libuv运行原理详解
Aug 21 NodeJs
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
Aug 20 NodeJs
分享node.js实现简单登录注册的具体代码
Apr 26 NodeJs
nodejs微信开发之自动回复的实现
Mar 17 #NodeJs
nodejs微信开发之接入指南
Mar 17 #NodeJs
nodejs微信开发之授权登录+获取用户信息
Mar 17 #NodeJs
详解nodejs 开发企业微信第三方应用入门教程
Mar 12 #NodeJs
详解NodeJS Https HSM双向认证实现
Mar 12 #NodeJs
NodeJs入门教程之定时器和队列
Mar 08 #NodeJs
nodejs npm错误Error:UNKNOWN:unknown error,mkdir 'D:\Develop\nodejs\node_global'at Error
Mar 02 #NodeJs
You might like
PHP 采集程序 常用函数
2008/12/18 PHP
WordPress中缩略图的使用以及相关技巧
2015/11/24 PHP
php调用云片网接口发送短信的实现方法
2017/10/25 PHP
扩展jQuery 键盘事件的几个基本方法
2009/10/30 Javascript
基于jquery的cookie的用法
2011/01/10 Javascript
js实现的切换面板实例代码
2013/06/17 Javascript
解析dom中的children对象数组元素firstChild,lastChild的使用
2013/07/10 Javascript
jQuery实现表格行上移下移和置顶的方法
2015/05/22 Javascript
js滚轮事件兼容性问题需要注意哪些
2016/11/15 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
浅谈node中的exports与module.exports的关系
2017/08/01 Javascript
angular内置provider之$compileProvider详解
2017/09/27 Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
2017/12/27 Javascript
全站最详细的Vuex教程
2018/04/13 Javascript
vue实现codemirror代码编辑器中的SQL代码格式化功能
2019/08/27 Javascript
解决layer弹出层自适应页面大小的问题
2019/09/16 Javascript
浅谈Vue中render中的h箭头函数
2019/11/07 Javascript
Vuex中的Mutations的具体使用方法
2020/06/01 Javascript
python获取android设备的GPS信息脚本分享
2015/03/06 Python
Python编程中用close()方法关闭文件的教程
2015/05/24 Python
Python编程中对super函数的正确理解和用法解析
2016/07/02 Python
python制作爬虫爬取京东商品评论教程
2016/12/16 Python
python数字图像处理实现直方图与均衡化
2018/05/04 Python
解决python读取几千万行的大表内存问题
2018/06/26 Python
Python一句代码实现找出所有水仙花数的方法
2018/11/13 Python
用Python逐行分析文件方法
2019/01/28 Python
在pycharm中显示python画的图方法
2019/08/31 Python
浅谈Python访问MySQL的正确姿势
2020/01/07 Python
python 浮点数四舍五入需要注意的地方
2020/08/18 Python
台湾网购生鲜第一品牌:i3Fresh爱上新鲜
2017/10/26 全球购物
将世界上最美丽的摄影作品转化为艺术作品:Photos.com
2017/11/28 全球购物
住房公积金接收函
2014/01/09 职场文书
商场总经理岗位职责
2014/02/03 职场文书
PyTorch 如何设置随机数种子使结果可复现
2021/05/12 Python
解决Pytorch修改预训练模型时遇到key不匹配的情况
2021/06/05 Python
分析设计模式之模板方法Java实现
2021/06/23 Java/Android