最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node項目使用http模塊發(fā)送get-post請求方式

 更新時間:2024年09月06日 13:39:39   作者:-風過無痕  
這篇文章主要介紹了node項目使用http模塊發(fā)送get-post請求方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

前言

  • http模塊是node.js提供內(nèi)置模塊,可以用來發(fā)送請求
  • 使用場景是本身這個node服務(wù)就是后端,調(diào)用第三方api或者其他服務(wù)使用http模塊
  • http模塊和axios本質(zhì)上是一個東西,看自己怎么選擇使用

代碼實現(xiàn)-不能直接復(fù)制-看注釋

1.請求文件代碼

// 導入http模塊
const http = require("http");
 
// 注意基地址
// let base_url = "https://ceshi.com"
 
// 基地址-去掉https://前綴 - 不去會報錯
let base_url = "ceshi.com"
 
 
// get-請求 - 獲取
// 使用promise - 方便維護和管理
const requestget = () => {
  return new Promise((resolve, reject) => {
 
    // 配置項
    const options = {
      // 基地址
      hostname: base_url,
      // 默認端口-不要改
      port: 80,
      // 接口路徑
      path: `/api/ceshi/list?參數(shù)=${"12"}&參數(shù)=${"12"}`,
      // 請求方式
      method: "get",
      // 請求頭信息
      headers: {
        // 請求參數(shù)格式
        "Content-Type": "application/json; charset=utf-8",
        // token
        Authorization: "",
      },
    };
 
    // 發(fā)送請求
    const getlist = http.request(options, (res) => {
      res.on("data", (data) => {
        // 把返回值轉(zhuǎn)換成utf-8格式
        const list = Buffer.from(data).toString("utf8");
        // 輸出在控制臺-json格式
        process.stdout.write(list);
        // 轉(zhuǎn)換數(shù)據(jù)
        const getlist = JSON.parse(list);
        // 返回成功結(jié)果
        resolve(getlist);
      });
    });
 
    // 錯誤處理
    getlist.on("error", (err) => {
      // 返回失敗結(jié)果
      reject(err.message);
    });
 
    // 請求參數(shù)-寫入
    getlist.write(postData);
 
    // 結(jié)束請求-不寫請求發(fā)送不出去
    getlist.end();
 
  })
}
 
 
 
 
// post-請求 - 分頁查詢
// 使用promise - 方便維護和管理
const requestpost = () => {
  return new Promise((resolve, reject) => {
 
    // 請求參數(shù)
    let postData = querystring.stringify({
      // 頁碼
      // 頁數(shù)
      // 總數(shù)
      // 參數(shù)
    });
 
    // 配置項
    const options = {
      // 基地址
      hostname: base_url,
      // 默認端口-不要改
      port: 80,
      // 接口路徑
      path: "/api/ceshi/list",
      // 請求方式
      method: "post",
      // 請求頭信息
      headers: {
        // 請求參數(shù)格式
        "Content-Type": "application/json; charset=utf-8",
        // token
        Authorization: "",
      },
    };
 
    // 發(fā)送請求
    const getpost = http.request(options, (res) => {
      res.on("data", (data) => {
        // 把返回值轉(zhuǎn)換成utf-8格式
        const list = Buffer.from(data).toString("utf8");
        // 輸出在控制臺-json格式
        process.stdout.write(list);
        // 轉(zhuǎn)換數(shù)據(jù)
        const getlist = JSON.parse(list);
        // 返回成功結(jié)果
        resolve(getlist);
      });
    });
 
    // 錯誤處理
    getpost.on("error", (err) => {
      // 返回失敗結(jié)果
      reject(err.message);
    });
 
    // 請求參數(shù)-寫入
    getpost.write(postData);
 
    // 結(jié)束請求-不寫請求發(fā)送不出去
    getpost.end();
 
  });
};

2.調(diào)用

const { requestget,requestpost } = require("文件位置");
 
async function getpostrequest (){
    // get
    const res = await requestget ()
    console.log("get請求結(jié)果", res);
 
    // post
   const ress = await requestpost ()
   console.log("post請求結(jié)果", ress);
}

細節(jié)

  • 1.注意基地址配置不要帶前綴-https:// 會報錯
  • 2.port 一般不用動
  • 3.end()方法一定要寫,不然請求可能會發(fā)不出去
  • 4.不要直接復(fù)制這么多-按照注釋請求成功在改

總結(jié)

經(jīng)過這一趟流程下來相信你也對 node項目-使用http模塊發(fā)送get-post請求 有了初步的深刻印象,但在實際開發(fā)中我 們遇到的情況肯定是不一樣的,所以我們要理解它的原理,萬變不離其宗。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Node卸載超詳細步驟(附圖文講解!)

    Node卸載超詳細步驟(附圖文講解!)

    由于之前的node為8.0版本,不太滿足需求,所以需要安裝高版本的node,下面這篇文章主要給大家介紹了關(guān)于Node卸載超詳細步驟的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • 詳解Node.js一行命令上傳本地文件到服務(wù)器

    詳解Node.js一行命令上傳本地文件到服務(wù)器

    這篇文章主要介紹了Node.js一行命令上傳本地文件到服務(wù)器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-04-04
  • 基于nodejs+express4.X實現(xiàn)文件下載的實例代碼

    基于nodejs+express4.X實現(xiàn)文件下載的實例代碼

    本篇文章主要介紹了詳解nodejs+express4.X的文件下載的實例代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • nodejs環(huán)境使用Typeorm連接查詢Oracle數(shù)據(jù)

    nodejs環(huán)境使用Typeorm連接查詢Oracle數(shù)據(jù)

    這篇文章主要介紹了nodejs環(huán)境使用Typeorm連接查詢Oracle數(shù)據(jù),本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-12-12
  • Node.js基礎(chǔ)入門之模塊與npm包管理器使用詳解

    Node.js基礎(chǔ)入門之模塊與npm包管理器使用詳解

    Node.js是一個基于Chrome?V8引擎的JavaScript運行時。類似于Java中的JRE,.Net中的CLR。本文將詳細為大家介紹Node.js中的模塊與npm包管理器的使用,需要的可以參考一下
    2022-03-03
  • node.js中的events.emitter.removeListener方法使用說明

    node.js中的events.emitter.removeListener方法使用說明

    這篇文章主要介紹了node.js中的events.emitter.removeListener方法使用說明,本文介紹了events.emitter.removeListener的方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • nodejs實現(xiàn)套接字服務(wù)功能詳解

    nodejs實現(xiàn)套接字服務(wù)功能詳解

    這篇文章主要介紹了nodejs實現(xiàn)套接字服務(wù)功能,簡單描述了套接字的概念、功能,并結(jié)合實例形式分析了nodejs使用socket對象創(chuàng)建及使用套接字進行數(shù)據(jù)傳輸相關(guān)操作技巧與注意事項,需要的朋友可以參考下
    2018-06-06
  • Node.js進行文件讀取與復(fù)制的系統(tǒng)總結(jié)

    Node.js進行文件讀取與復(fù)制的系統(tǒng)總結(jié)

    這篇文章主要為大家詳細介紹了Node.js中文件讀取與復(fù)制相關(guān)內(nèi)容的系統(tǒng)總結(jié),包括 同步讀取,異步讀取,復(fù)制操作等,有需要的小伙伴可以跟隨小編一起了解下
    2025-04-04
  • 基于socket.io+express實現(xiàn)多房間聊天

    基于socket.io+express實現(xiàn)多房間聊天

    本文給大家分享的是使用node.js,基于socket.io+express實現(xiàn)多房間聊天的代碼,非常的實用,有需要的小伙伴可以來參考下
    2016-03-03
  • Express下采用bcryptjs進行密碼加密的方法

    Express下采用bcryptjs進行密碼加密的方法

    本篇文章主要介紹了Express下采用bcryptjs進行密碼加密的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02

最新評論

贵南县| 临猗县| 东兴市| 哈密市| 万全县| 金昌市| 榆中县| 南川市| 莱西市| 满洲里市| 灯塔市| 定结县| 天峻县| 乌兰察布市| 灵山县| 武宣县| 虞城县| 达拉特旗| 香河县| 东方市| 遂平县| 皮山县| 武宣县| 河曲县| 沅陵县| 盐城市| 四川省| 五莲县| 财经| 巩义市| 新乡县| 同江市| 射洪县| 澄迈县| 阿巴嘎旗| 浦北县| 涿州市| 仪陇县| 屏东市| 光山县| 霍城县|