欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

NodeJS http模塊用法示例【創(chuàng)建web服務(wù)器/客戶端】

 更新時(shí)間:2019年11月05日 10:20:28   作者:蒼青浪  
這篇文章主要介紹了NodeJS http模塊用法,結(jié)合實(shí)例形式分析了node.js創(chuàng)建web服務(wù)器與客戶端,進(jìn)行HTTP通信的相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了NodeJS http模塊用法。分享給大家供大家參考,具體如下:

Node.js提供了http模塊,用于搭建HTTP服務(wù)端和客戶端。

創(chuàng)建Web服務(wù)器

/**
 * node-http 服務(wù)端
 */
let http = require('http');
let url = require('url');
let fs = require('fs');
// 創(chuàng)建服務(wù)器
let server = http.createServer((req, res) => {
  // 解析請求
  let pathname = url.parse(req.url).pathname; // 形如`/index.html`
  console.log('收到對文件 ' + pathname + '的請求');
  // 讀取文件內(nèi)容
  fs.readFile(pathname.substr(1), (err, data) => {
    if (err) {
      console.log('文件讀取失敗:' + err);
      // 設(shè)置404響應(yīng)
      res.writeHead(404, {
        'Content-Type': 'text/html'
      });
    }
    else {
      // 狀態(tài)碼:200
      res.writeHead(200, {
        'Content-Type': 'text/html'
      });
      // 響應(yīng)文件內(nèi)容
      res.write(data.toString());
    }
    // 發(fā)送響應(yīng)
    res.end();
  });
});
server.listen(8081);
console.log('服務(wù)運(yùn)行在:http://localhost:8081,請?jiān)L問:http://localhost:8081/index.html');

index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Node http</title>
</head>
<body>
  <h1>Hi~</h1>
</body>
</html>

運(yùn)行server.js,打開瀏覽器訪問。

創(chuàng)建客戶端

client.js

/**
 * node http 創(chuàng)建客戶端
 */
let http = require('http');
// 請求選項(xiàng)
let options = {
  host: 'localhost',
  port: '8081',
  path: '/index.html'
};
// 處理響應(yīng)的回調(diào)函數(shù)
let callback = (res) => {
  // 不斷更新數(shù)據(jù)
  let body = '';
  res.on('data', (data) => {
    body += data;
  });
  res.on('end', () => {
    console.log('數(shù)據(jù)接收完成');
    console.log(body);
  });
}
// 向服務(wù)端發(fā)送請求
let req = http.request(options, callback);
req.end();

運(yùn)行server.js,再運(yùn)行client.js。

希望本文所述對大家node.js程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • xtemplate node.js 的使用方法實(shí)例解析

    xtemplate node.js 的使用方法實(shí)例解析

    這篇文章主要介紹了xtemplate node.js 的使用方法實(shí)例說明,非常不錯(cuò),介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-08-08
  • Nodejs學(xué)習(xí)筆記之Stream模塊

    Nodejs學(xué)習(xí)筆記之Stream模塊

    nodejs的fs模塊并沒有提供一個(gè)copy的方法,但我們可以很容易的實(shí)現(xiàn)一個(gè),這種方式是把文件內(nèi)容全部讀入內(nèi)存,然后再寫入文件,對于小型的文本文件,這沒有多大問題,比如grunt-file-copy就是這樣實(shí)現(xiàn)的。
    2015-01-01
  • NodeJS落地WebSocket實(shí)踐前端架構(gòu)師破局技術(shù)

    NodeJS落地WebSocket實(shí)踐前端架構(gòu)師破局技術(shù)

    這篇文章主要為大家介紹了NodeJS落地WebSocket實(shí)踐前端架構(gòu)師破局技術(shù),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 快速了解Node中的Stream流是什么

    快速了解Node中的Stream流是什么

    今天小編就為大家分享一篇關(guān)于快速了解Node中的Stream流是什么,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 解決Node.js包管理器安裝報(bào)錯(cuò)npm?ERR!?code?1的問題

    解決Node.js包管理器安裝報(bào)錯(cuò)npm?ERR!?code?1的問題

    在開發(fā)過程中,我們經(jīng)常需要使用各種Node.js包來擴(kuò)展我們的應(yīng)用程序功能,這些包通常通過npm(Node.js包管理器)進(jìn)行安裝和管理,有時(shí)候我們可能會(huì)遇到一些關(guān)于npm的錯(cuò)誤,本文將詳細(xì)介紹如何解決這個(gè)問題,并提供一個(gè)詳細(xì)的實(shí)例,需要的朋友可以參考下
    2024-03-03
  • node.js中的fs.readSync方法使用說明

    node.js中的fs.readSync方法使用說明

    這篇文章主要介紹了node.js中的fs.readSync方法使用說明,本文介紹了fs.readSync方法說明、語法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • nvm管理node無法正常切換node版本問題的解決方法

    nvm管理node無法正常切換node版本問題的解決方法

    相信一定會(huì)有存在一些小伙伴 明明都已經(jīng)按著操作卸載node 和安裝nvm 了但是 依舊無法正常通過nvm管理node,本文將給大家介紹nvm管理node無法正常切換node版本問題的解決方法,需要的朋友可以參考下
    2024-01-01
  • 利用nodeJs anywhere搭建本地服務(wù)器環(huán)境的方法

    利用nodeJs anywhere搭建本地服務(wù)器環(huán)境的方法

    今天小編就為大家分享一篇利用nodeJs anywhere搭建本地服務(wù)器環(huán)境的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 如何在NestJS中添加對Stripe的WebHook驗(yàn)證詳解

    如何在NestJS中添加對Stripe的WebHook驗(yàn)證詳解

    這篇文章主要為大家介紹了如何在NestJS中添加對Stripe的WebHook驗(yàn)證詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-08-08
  • 配置nodejs環(huán)境的方法

    配置nodejs環(huán)境的方法

    本篇文章主要介紹了配置nodejs環(huán)境變量的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05

最新評論