详解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的子进程(child_process)调用系统命令的方法分享
Jun 05 NodeJs
Google官方支持的NodeJS访问API,提供后台登录授权
Jul 29 NodeJs
详解nodejs 文本操作模块-fs模块(二)
Dec 22 NodeJs
Nodejs基于LRU算法实现的缓存处理操作示例
Mar 17 NodeJs
nodejs爬虫遇到的乱码问题汇总
Apr 07 NodeJs
nodejs基于mssql模块连接sqlserver数据库的简单封装操作示例
Jan 05 NodeJs
nodejs+mongodb aggregate级联查询操作示例
Mar 17 NodeJs
NodeJS搭建HTTP服务器的实现步骤
Oct 12 NodeJs
通过Nodejs搭建网站简单实现注册登录流程
Jun 14 NodeJs
nodejs 递归拷贝、读取目录下所有文件和目录
Jul 18 NodeJs
Sublime Text3 配置 NodeJs 环境的方法
May 20 NodeJs
nodeJs项目在阿里云的简单部署
Nov 27 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 IPV6正则表达式验证代码
2010/02/16 PHP
PHP运行模式汇总
2016/11/06 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
2020/07/10 PHP
javascript[js]获取url参数的代码
2007/10/17 Javascript
jQuery Ajax提交表单查询获得数据实例代码
2012/09/19 Javascript
7个JS基础知识总结
2014/03/05 Javascript
JavaScript实现三阶幻方算法谜题解答
2014/12/29 Javascript
JS实现黑色大气的二级导航菜单效果
2015/09/18 Javascript
javascript事件绑定学习要点
2016/03/09 Javascript
JavaScript实现一个空中避难的小游戏
2017/06/06 Javascript
Node.js+jade+mongodb+mongoose实现爬虫分离入库与生成静态文件的方法
2017/09/20 Javascript
Vue实现搜索 和新闻列表功能简单范例
2018/03/16 Javascript
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
Python两个内置函数 locals 和globals(学习笔记)
2016/08/28 Python
通过5个知识点轻松搞定Python的作用域
2016/09/09 Python
Python中进程和线程的区别详解
2017/10/29 Python
python 对象和json互相转换方法
2018/03/22 Python
Python实现二维数组输出为图片
2018/04/03 Python
Python简单实现阿拉伯数字和罗马数字的互相转换功能示例
2018/04/17 Python
python消除序列的重复值并保持顺序不变的实例
2018/11/08 Python
Python实现PyPDF2处理PDF文件的方法示例
2019/09/25 Python
Django实现WebSSH操作物理机或虚拟机的方法
2019/11/06 Python
python的time模块和datetime模块实例解析
2019/11/29 Python
css3动画鼠标放上图片逐渐变大鼠标离开图片逐渐缩小效果
2021/01/27 HTML / CSS
Sperry官网:帆船鞋创始品牌
2016/09/07 全球购物
高级文秘工作总结的自我评价
2013/09/28 职场文书
追悼会上的答谢词
2014/01/10 职场文书
涉密人员保密承诺书
2014/05/28 职场文书
美食节目策划方案
2014/05/31 职场文书
伦敦奥运会口号
2014/06/13 职场文书
分公司总经理岗位职责
2014/07/30 职场文书
导游词开场白
2015/01/31 职场文书
2015年酒店工作总结
2015/04/28 职场文书
事业单位工作人员2015年度思想工作总结
2015/10/15 职场文书
Python - 10行代码集2000张美女图
2021/05/23 Python
为自由献出你的心脏!「进击的巨人展 FINAL」2022年6月在台开展
2022/04/13 日漫