详解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的前后端分离的思考与实践(六)Nginx + Node.js + Java 的软件栈部署实践
Sep 26 NodeJs
用nodeJS搭建本地文件服务器的几种方法小结
Mar 16 NodeJs
nodejs个人博客开发第一步 准备工作
Apr 12 NodeJs
深入浅析Nodejs的Http模块
Jun 20 NodeJs
Nodejs之TCP服务端与客户端聊天程序详解
Jul 07 NodeJs
nodejs实现超简单生成二维码的方法
Mar 17 NodeJs
详解nodejs通过响应回写的方式渲染页面资源
Apr 07 NodeJs
详解Nodejs内存治理
May 13 NodeJs
nodejs基础之多进程实例详解
Dec 27 NodeJs
Nodejs让异步变成同步的方法
Mar 02 NodeJs
NodeJs操作MongoDB教程之分页功能以及常见问题
Apr 09 NodeJs
关于NodeJS中的循环引用详解
Jul 23 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 mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
php输出形式实例整理
2020/05/05 PHP
通过PHP实现用户注册后邮箱验证激活
2020/11/10 PHP
jQuery实现当按下回车键时绑定点击事件
2014/01/28 Javascript
JQuery中extend使用介绍
2014/03/13 Javascript
使用requestAnimationFrame实现js动画性能好
2015/08/06 Javascript
js实现选中页面文字将其分享到新浪微博
2015/11/05 Javascript
jQuery给元素添加样式的方法详解
2015/12/30 Javascript
JavaScript仿支付宝6位数字密码输入框
2016/12/29 Javascript
AngularJS中使用ngModal模态框实例
2017/05/27 Javascript
浅谈angular2 组件的生命周期钩子
2017/08/12 Javascript
使用JS和canvas实现gif动图的停止和播放代码
2017/09/01 Javascript
vue.js 微信支付前端代码分享
2018/02/10 Javascript
vue将时间戳转换成自定义时间格式的方法
2018/03/02 Javascript
vue 微信授权登录解决方案
2018/04/10 Javascript
Vue切换组件实现返回后不重置数据,保留历史设置操作
2020/07/21 Javascript
vue 调用 RESTful风格接口操作
2020/08/11 Javascript
详解Python中的正则表达式的用法
2015/04/09 Python
实例讲解Python中global语句下全局变量的值的修改
2016/06/16 Python
python 实现视频流下载保存MP4的方法
2019/01/09 Python
Python字典遍历操作实例小结
2019/03/05 Python
搭建pypi私有仓库实现过程详解
2020/11/25 Python
详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据
2020/12/13 Python
OpenCV+python实现膨胀和腐蚀的示例
2020/12/21 Python
matplotlib部件之矩形选区(RectangleSelector)的实现
2021/02/01 Python
html5 canvas实现跟随鼠标旋转的箭头
2016/03/11 HTML / CSS
萌新HTML5 入门指南(二)
2020/11/09 HTML / CSS
德国旅游网站:weg.de
2018/06/03 全球购物
西班牙宠物用品和食品网上商店:Tiendanimal
2019/06/06 全球购物
摄影展策划方案
2014/06/02 职场文书
2014年电工工作总结
2014/11/20 职场文书
会计求职信怎么写
2015/03/20 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
二十年同学聚会致辞
2015/07/28 职场文书
运动会开幕式致辞
2015/07/29 职场文书