Node.js之request模塊 發送請求


  • Node.js發送請求,需要用到request這個模塊
  • request官網

導入

npm install request --save
  import * as requestHttp from 'request';

 

get 請求

@Get('/xxxxx')
  async getImage(@Req() request: Request, @Res() response: Response) {
    const url = request.query.url;
    requestHttp(url).pipe(response);
  }

post 請求

post請求有3種方式,由請求頭中的content-type決定,屬於哪一種post請求
  • application/x-www-form-urlencoded: 普通http請求方式,參數是普通的url參數拼接
  • application/json: JSON請求方式,參數是json格式
  • multipart/form-data: 文件上傳

application/x-www-form-urlencoded

 requestHttp.post(url).form(request.body).pipe(response);
  或者    
requestHttp({ method : 'post', uri: url, form: request.body }) .pipe(response)

 

application/json

    requestHttp({
      method : 'post',
      uri: url,
      json: true,
      headers: {
          "content-type": "application/json",
      },
      body: request.body,
    })
    .pipe(response);

multipart/form-data

var formData = {
    // Pass a simple key-value pair
    my_field: 'my_value',
    // Pass data via Buffers
    my_buffer: new Buffer([1, 2, 3]),
    // Pass data via Streams
    my_file: fs.createReadStream(__dirname + '/unicycle.jpg'),
};
request.post({url:url, formData: formData}, function (error, response, body) {  
    if (!error && response.statusCode == 200) {
    }
})
 
 
 

作者:袁崢
鏈接:https://www.jianshu.com/p/a156729ce499
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM