Blog

Blog

PHODAL

Nodejs RESTify RESTful创建

回顾一下之前用RESTify创建API的过程,没有注意到官方给的示例和原来的不同,于是再次做个笔记。。

RESTify GET

对于GET请求来说应该是比较简单的,也不会存在数据传不进来的问题,一个简单的GET示例

const restserver      = restify.createServer();

restserver.get('id/:id',       rest_helper.respond);
restserver.head('id/:id',      rest_helper.respond);

restserver.listen(8848, function() {
        console.log('%s listening at %s', restserver.name, restserver.url);
});

接着我们只需要创建一个简单的respond来响应就可以了

function respond (req, res, next) {       
    res.send({});
    next();
};

这样便完成一个简单的GET请求,我们可以通过

curl http://localhost:8848/id/1

来传进ID值并返回一个结果。

RESTify POST请求

一开始没有注意到官方的示例

var restify = require('restify');
var server = restify.createServer({});

server.use(restify.acceptParser(server.acceptable));
server.use(restify.queryParser());
server.use(restify.bodyParser());

server.get('/echo/:name', function (req, res, next) {
  res.send(req.params);
  return next();
});

server.listen(8080, function () {
  console.log('%s listening at %s', server.name, server.url);
});

中用到了bodyParser用以接收参数,才能POST数据。我们才能用POST命令将数据POST进去,一个简单的curl示例如下所示

 curl -H "Content-Type: application/json" -d '{"id":3, "value":"dream","sensors1":12,"sensors2":13}' http://localhost:8848

关于我

Github: @phodal     微博:@phodal     知乎:@phodal    

微信公众号(Phodal)

围观我的Github Idea墙, 也许,你会遇到心仪的项目

QQ技术交流群: 321689806
comment

Feeds

RSS / Atom

最近文章

关于作者

Phodal Huang

Engineer, Consultant, Writer, Designer

ThoughtWorks 技术专家

工程师 / 咨询师 / 作家 / 设计学徒

开源深度爱好者

出版有《前端架构:从入门到微前端》、《自己动手设计物联网》、《全栈应用开发:精益实践》

联系我: h@phodal.com

微信公众号: 最新技术分享

标签