nodejs--http

來源:互聯網
上載者:User

標籤:message   head   creates   觸發事件   參數   end   tp伺服器   ejs   寫法   

http模組主要用到四個方法:

  1.Server類

    const http = require(‘http‘);

    let server = new Server();

    server.on(‘request‘,function(req,res){

      res.writeHead(200,{content-type:‘text/plain‘});

    } );

    server.listen(3000,function(){});

    http.Server 主要的事件有:

      ~ request,當用戶端發送請求時觸發,回呼函數會有req和res參數。

      ~ connection,當TCP連結建立時事件觸發,提供一個socket參數,是net.socket的執行個體。這裡不作說明。

      ~ close,當伺服器關閉時觸發事件。

  2.createServer( function(req,res){} );

    此方法相當於Server添加了一個request事件。

 

  以上1、2的req是http.IncomingMessage的執行個體,其提供了三個事件:

      ~ data:當請求體資料到來時該事件被觸發。該事件提供一個chunk作為參數,代表接受到的資料。

      ~ end:當請求體資料轉送完畢時該事件被觸發。

      ~close:使用者當前請求結束時觸發。

      同時,http.IncomingMessage提供的主要屬性有:

      ~ method:http請求的方法。

      ~ headers:http要求標頭。

      ~ url:請求路徑。

      ~ httpVersion:http協議版本。

    res是http.ServerResponse的執行個體,常用方法:

      ~ res.writeHead(statusCode,[headers])。

      ~ res.write(data[,encoding]);向請求發送內容。

      ~ res.end([data]);結束請求。

 

  Server()和createServer()返回的是一個基於事件的http伺服器。

 

  3.request()

    request()必須end()。

    const http = require(‘http‘);

    http.request(option[,function(res){}]).end();

    ~ option 為JSON對象,主要有host、port(預設80)、method(預設get)、path(請求的相對路徑、預設‘/‘)、headers等。

  4.get()

    http.get()方法是http.request()的get方法寫法,同樣需要end();

  request()和get()返回的是一個http.ClientRequest類執行個體。其主要的事件和方法有:

    ~ response,該事件當收到響應時觸發。

    ~ request.write(chunk[,encoding,callback]),發送請求資料。

    ~ end(),請求完畢,應該始終指定該方法。

 

  

nodejs--http

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.