【nodejs】使用Node.js实现REST Client调用REST API

最近在产品中开发基于REST的API接口,结合自己最近对Node.js的研究,想基于它开发一个REST Client做测试之用。

通过初步研究,Node.js开发HTTP Client还是挺方便的。

选用Node的理由:

1. 使用完全基于JavaScript的Node测试JSON格式的数据,非常之方便

2. Node有很好的社区支持。(现在GitHub上已成了JavaScript最大的开源社区)

By Example:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

var http = require(‘http‘);

var equal = require(‘assert‘).equal;

var username = ‘falcon‘;

var password = ‘‘;

var _auth = ‘Basic ‘ + new Buffer(username + ‘:‘ + password).toString(‘base64‘)

var options = {

    host: ‘localhost‘,

    port: 13080,

    path: ‘/SM/7/rest/1.1/incident_list/‘,

    method: ‘GET‘,

    headers:{

        ‘accept‘: ‘*/*‘,

        ‘content-type‘: "application/atom+xml",

        ‘accept-encoding‘: ‘gzip, deflate‘,

        ‘accept-language‘: ‘en-US,en;q=0.9‘,

        ‘authorization‘: _auth,

        ‘user-agent‘: ‘nodejs rest client‘

    }

};

var req = http.request(options, function (res) {

    console.log(‘STATUS: ‘ + res.statusCode);

    equal(200, res.statusCode);

    console.log(‘HEADERS: ‘ + JSON.stringify(res.headers));

    res.on(‘data‘,function (chunk) {

         console.log(‘BODY: ‘ + chunk);

    });

});

req.on(‘error‘, function(e) {

  console.log(‘problem with request: ‘ + e.message);

});

req.end();

将上述代码保存成RestTest.js,然后在命令行上运行: node RestTest.js 就可以看输出的结果了。

上面的代码只是使用Node自带的Assert做Unit Test,如果有兴趣的话,还是引入Jasmine等BDD的测试框架。(待续。。。)

时间: 2025-01-04 08:48:48

【nodejs】使用Node.js实现REST Client调用REST API的相关文章

【nodeJs】node.js的安装

1.在nodejs官网下载相关文件并安装  官网网址:http://www.nodejs.org/ 2.验证是否正确安装 在window下可以通过按住windows键并同时按r键,然后输入cmd来启动一个终端 在终端上输入node 输入1+1,可以看到系统返回2,说明node.js安装成功,如下所示:

【NodeJS】Node.JS 开发环境安装

1.前言 简单的说 Node.js 就是运行在服务端的 JavaScript. Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台. Node.js是一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好. 2.开始 1.下载 下载:https://nodejs.org/en/download/ .msi windows标准安装文件. .zip windows二进制安装文件. 2.安装

[NodeJS]使用Node.js写一个简单的在线聊天室

声明:教程来自<Node即学即用>.源代码案例均出自此书.博文仅为个人学习笔记. 第一步:创建一个聊天server. 首先,我们先来写一个Server: var net = require('net') var chatServer = net.createServer() chatServer.on('connection',function(client){ client.write('connection~~~\n') client.end() }) chatServer.listen(

Node.js学习笔记——模块调用

js创建一个类然后在另一程序中实例化使用这个类1.创建一个User类//--------------User.js--------------  function  User(id,name,age){    this.id=id;    this.name=name;    this.age=age;    this.enter=function(){        console.log("进入图书馆");    }}module.exports    =    User;2.调用

node.js学习笔记之调用函数

本文件和从其它模块引入函数: 从其他模块引入分只支持引入一个函数和多个  这两种 例: test.js为主函数 var http=require('http'); http.createServer(function (request,response){ response.writeHead(200,{'Content-Type':'text/html'}) func1(response);//调用内部 otherfun.func3(response);//调用外部函数 console.log

node.js 函数定义和调用

·函数定义: var a=2; function add(i){ if(i>0){ return 1; }else{ return 2; } } add(a); console.log(add(a)); function  //函数定义 add   //函数名称 (i)   //形参,多个形参可以用 , 隔开 {}   //函数体   可以包含若干语句   也可以没有语句 add(a)    //实参,是将 a 的值付给形参 i    (函数调用) 注:函数内部的语句 ,执行到return时,函

学习node.js 第1篇 介绍nodejs

Node.js是什么? Node.js是建立在谷歌Chrome的JavaScript引擎(V8引擎)的Web应用程序框架. 它的最新版本是:v0.12.7(在编写本教程时的版本).Node.js在官方网站的定义文件内容如下: Node.js® is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an even

NodeJs&gt;-------&gt;&gt;第一章:Node.js介绍

一:章节前言 二:Node.js概述 1:使用node.js能够解决什么问题 2:实现高性能服务器 3:非阻塞型I/O及事件环形机制 4:node.js适合开发的程序 三:node.js安装 一.Node.js 安装配置 Node.js 提供在Windows和Linux上安装, 本文将以Windows上Node最新版本v6.9.3为例来学习,不足之处还望指正: 1.  Window 上安装Node.js 32 位安装包下载地址 : https://nodejs.org/dist/v6.9.3/n

快速使用node.js进行web开发

首先关于node.js的学习,这里推荐一本比较好的教程,nodejs web开发指南,该书通俗易懂地将node.js语言特性讲解完之后,又从一个项目角度带领读者使用node.js学习web开发.相信这是一个比较好的学习模式和过程.由于这本书是2012年出的,书中的一个web教学项目是开发一个微博.从2012到现在,node.js及其生态环境发生了很大改变,所以关于该书的学习如果照着书本显然是过于陈旧的.到目前为止,node.js的web开发框架已经升级到了Express4.12.1,对于Mong