Skip to content

API 请求处理路由

杨捷 edited this page Dec 11, 2013 · 3 revisions

Codekart 已经为你准备好了 api 路由处理方案,你只需要专注实现即可。

比如,我们要添加一个获取文章评论的的api,它返回一个评论列表。请按下面的步骤的添加处理程序:

一.app/api目录下面,添加一个comment.js文件。

二. 文件的内容如下:


var mysql = require_lib('mysql '); //使用mysql需要另外安装 node-mysql 模块,地址 https://github.com/felixge/node-mysql

exports.get= function(){
    var that = this //本地this对象,封装了请求原始对象和常用的方法
        , request = that.request  //request对象
        , response = that.response  //response对象
        , get = request.get    //url的get参数
        , post = request.post  //请求的post参数
        , article_id = get.article_id;
    
    //从数据库获取内容
    mysql.query('SELECT * FROM comment WHERE article_id='+article_id,function(err,data){
        //调用则向客户端返回数据,并关闭连接
        that.renderApi(200,"api is ok !",data);
    });

    /*
     通过调用 this.renderApi() 向客户端返回数据,为json格式的字符串:
     {
       code: 200, //自定义代码 200位返回正确
       msg: "", //消息
       data: {} //数据
     } 
     你也可以调用 this.renderJson() 返回其它的 自定义格式的 json 数据
     
     */

};

三. 重启Node.js,通过浏览器访问http://localhost/api/comment/get?article_id=1,就能看到数据。

你也可以在app/api/下面建一个目录article,然后在article下面新建文件comment.js,文件内容相同,然后访问 api 的路径就变成了:http://localhost/api/article/comment/get?article_id=1,可以建立多级目录。

注意: 所有的 api 处理程序都必须在app/api目录下,其它目录将无效!(被作为web页面解析)

Codekart


Clone this wiki locally