详解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使用mysql模块之获得更新和删除影响的行数的方法
Mar 18 NodeJs
NodeJS中Buffer模块详解
Jan 07 NodeJs
NodeJS学习笔记之Module的简介
Mar 24 NodeJs
Nodejs中使用captchapng模块生成图片验证码
May 18 NodeJs
nodejs制作爬虫实现批量下载图片
May 19 NodeJs
详解nodejs的express如何自动生成项目框架
Jul 12 NodeJs
nodejs微信扫码支付功能实现
Feb 17 NodeJs
Nodejs下使用gm圆形裁剪并合成图片的示例
Feb 22 NodeJs
Nodejs使用Mongodb存储与提供后端CRD服务详解
Sep 04 NodeJs
NodeJS使用Range请求实现下载功能的方法示例
Oct 12 NodeJs
使用nodejs分离html文件里的js和css详解
Apr 12 NodeJs
详解利用nodejs对本地json文件进行增删改查
Sep 20 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
Opcache导致php-fpm崩溃nginx返回502
2015/03/02 PHP
Nginx下配置codeigniter框架方法
2015/04/07 PHP
Laravel5.* 打印出执行的sql语句的方法
2017/07/24 PHP
javascript multibox 全选
2009/03/22 Javascript
JS无限树状列表实现代码
2011/01/11 Javascript
jQuery EasyUI API 中文文档 - NumberBox数字框
2011/10/13 Javascript
JavaScript 32位整型无符号操作示例
2013/12/08 Javascript
解释&amp;&amp;和||在javascript中的另类用法
2014/07/28 Javascript
对JavaScript中this指针的新理解分享
2015/01/31 Javascript
javascript控制层显示或隐藏的方法
2015/07/22 Javascript
原生JavaScript实现瀑布流布局
2020/06/28 Javascript
javascript中Number的方法小结
2016/11/21 Javascript
修改 bootstrap table 默认detailRow样式的实例代码
2017/07/21 Javascript
从setTimeout看js函数执行过程
2017/12/19 Javascript
node.js如何操作MySQL数据库
2020/10/29 Javascript
vant-ui框架的一个bug(解决切换后onload不触发)
2020/11/11 Javascript
Windows上配置Emacs来开发Python及用Python扩展Emacs
2015/11/20 Python
python实现网站的模拟登录
2016/01/04 Python
python邮件发送smtplib使用详解
2020/06/16 Python
Linux 修改Python命令的方法示例
2018/12/03 Python
Python 从subprocess运行的子进程中实时获取输出的例子
2019/08/14 Python
Python列表解析操作实例总结
2020/02/26 Python
Python urllib.request对象案例解析
2020/05/11 Python
keras实现VGG16方式(预测一张图片)
2020/07/07 Python
用python批量移动文件
2021/01/14 Python
利用CSS3的checked伪类实现OL的隐藏显示的方法
2010/12/18 HTML / CSS
教师教学评估方案
2014/05/09 职场文书
2014班子“三严三实”对照检查材料思想汇报
2014/09/18 职场文书
教师作风整顿个人剖析材料
2014/10/10 职场文书
结婚纪念日感言
2015/08/01 职场文书
企业年会祝酒词
2015/08/11 职场文书
pytorch交叉熵损失函数的weight参数的使用
2021/05/24 Python
OpenCV-Python实现图像平滑处理操作
2021/06/08 Python
Python os和os.path模块详情
2022/04/02 Python
Python 视频画质增强
2022/04/28 Python
python神经网络学习 使用Keras进行回归运算
2022/05/04 Python