node上轉接RESTful風格接口

按照最初的設計,node服務器是夾雜在前端頁面與java服務器的中間服務器。因此前端頁面請求node後,node還須要再去和服務器請求數據,而後再返回。這裏java接口使用了RESTful 風格。node上使用request實現數據的請求。html

RESTful 簡介

一種軟件架構風格,設計風格而不是標準,只是提供了一組設計原則和約束條件。它主要用於客戶端和服務器交互類的軟件。基於這個風格設計的軟件能夠更簡潔,更有層次,更易於實現緩存等機制。前端

node上請求後臺接口

在這裏咱們使用node的request這個插件,它具備如下的這些功能java

  1. 讓http請求變的更加簡單。node

  2. 任何響應均可以輸出到文件流。npm

  3. 支持application/x-www-form-urlencoded和multipart/form-data實現表單上傳。json

  4. HTTP認證segmentfault

  5. OAuth登陸api

  6. 定製HTTP header緩存

node請求後臺數據

app.route("/v1/factory")
.post(function(req,res,next){ 
    request.post({
        url : 'http://url/v1/aa',
        json : true,
        form : JSON.stringify({
           aa : aa,
           bb : bb
        }),
        headers : {}
        },function(e,r,body){
          if (r.statusCode == 200) {
             res.jsonp({}) 
          } else {
             res.jsonp({}) 
          }    
    })
})

傳輸文件流(fs)

fs.createReadStream(url).pipe(request.put({
    url : 'http://url/v1/aa'
    headers : {}
},function(e,r,body){
}))

node上編寫RESTful風格接口

app.route("/v1/supermarket")  
   .get(function(req,res,next){
       // 獲取數據
   })
   .post(function(req,res,next){
       // 添加數據
   })
   .put(function(req,res,next){
       // 修改數據
   })
   .delete(function(req,res,next){
       //  刪除數據
   })
相關文章
相關標籤/搜索