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

如何在node環(huán)境實(shí)現(xiàn)“get數(shù)據(jù)解析”代碼實(shí)例

 更新時(shí)間:2020年07月03日 10:08:50   作者:奔跑的太陽(yáng)花  
這篇文章主要介紹了如何在node環(huán)境實(shí)現(xiàn)“get數(shù)據(jù)解析”代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

1、自己寫(xiě)

const http = require('http');
 
http.createServer(function(req,res){
  var get = {};
  if(req.url.indexOf('?')!=-1){
    var arr = req.url.split('?');
    var url = arr[0];
    var arr2 = arr[1].split('&');
    for(var i=0;i<arr2.length;i++){
      var arr3 = arr2[i].split('=');
      get[arr3[0]]=arr3[1];
    }
  }else{
    var url = req.url;
  }
  console.log(url,get);
  res.write('aaa');
  res.end();
}).listen(8080);

2、引入querystring模塊

const http = require('http');
const querystring = require('querystring');
http.createServer(function(req,res){
  var get = {};
  if(req.url.indexOf('?')!=-1){
    var arr = req.url.split('?');
    var url = arr[0];
    get = querystring.parse(arr[1]);
  }else{
    var url = req.url;
  }
  console.log(url,get);
  res.write('aaa');
  res.end();
}).listen(8080);

3、引入url模塊

const http = require('http');
const urlli = require('url');
http.createServer(function(req,res){
  var obj = urlli.parse(req.url,true); //true解析,如果沒(méi)有true,默認(rèn)不解析
  var url = obj.pathname;
  var get = obj.query;
  console.log(url,get);
  res.write('aaa');
  res.end();
}).listen(8080);

提交表單的HTML代碼

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
</head>
<body>
  <form action="http://localhost:8080/aaa" method="get">
    用戶:<input type="text" name="user" value=''><br>
    密碼:<input type="password" name="pass" value=''><br>
    <input type="submit" value="提交">
  </form>
</body>
</html>

個(gè)人練習(xí)如下:

const http = require("http");
const queryString = require("querystring");
const urlNode = require('url');

http.createServer((req,res)=>{
  console.log(req.url);  // /aaa?user=123&pass=456
  var get = {};
  var url = '';
  if(req.url.indexOf('?') != -1){

    //方法一:切割字符串
    // var _arr = req.url.split('?'); //['aaa','user=123&pass=456']
    // url = _arr[0]; //'aaa'
    // var _arr2 = _arr[1].split('&'); //['user=123','pass=456']
    // _arr2.map((v,k,arr)=>{
    //   var key = v.split('=')[0];
    //   var value = v.split('=')[1];
    //   get[key] = value;
    // })

    //方法二:正則表達(dá)式
    // var query = req.url.substr(req.url.indexOf('?')+1);
    // var regAll = new RegExp("([^?&=]+)=([^?&=]*)", "gi");
    // var regSingle = new RegExp("([^?&=]+)=([^?&=]*)", "i");
    // var arrAll = query.match(regAll);   //["user=123", "pass=456"]
    // arrAll.map(function(v,k,arr){
    //   var resultArr = v.match(regSingle);
    //   get[resultArr[1]] = resultArr[2];
    // })
    //方法三:引入querystring模塊
    // const arr = req.url.split('?');
    // url = arr[0];
    // get = queryString.parse(arr[1]);
    //方法四:
    // const obj = urlNode.parse(req.url,true);
    // url = obj.pathname;
    // get = obj.query;

  }else{
    url = req.url;
  }
  console.log(url,get);
  res.write('123456')
  res.end('12')
}).listen(8000)

以上都 是原生node實(shí)現(xiàn):

下面的是express中 req.query 就可以方便的取到 { id 123456}

app.get('/article',(req,res)=>{
  console.log(req.query)
  
})

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • node app 打包工具pkg的具體使用

    node app 打包工具pkg的具體使用

    這篇文章主要介紹了node app 打包工具pkg的具體使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2019-01-01
  • 淺析node.js中close事件

    淺析node.js中close事件

    本文簡(jiǎn)單介紹了http.ServerRespose對(duì)象的close事件,并給出了相關(guān)實(shí)例,推薦給需要的小伙伴參考下吧。
    2014-11-11
  • Node.js利用Net模塊實(shí)現(xiàn)多人命令行聊天室的方法

    Node.js利用Net模塊實(shí)現(xiàn)多人命令行聊天室的方法

    Node.js Net 模塊提供了一些用于底層的網(wǎng)絡(luò)通信的小工具,包含了創(chuàng)建服務(wù)器/客戶端的方法,下面這篇文章主要給大家介紹了Node.js利用Net模塊實(shí)現(xiàn)命令行多人聊天室的方法,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。
    2016-12-12
  • NodeJS學(xué)習(xí)筆記之MongoDB模塊

    NodeJS學(xué)習(xí)筆記之MongoDB模塊

    nodejs是個(gè)強(qiáng)大的平臺(tái),有基本功能,而且可以掛很多模塊。我們現(xiàn)在需要和mongodb連接的驅(qū)動(dòng),就類(lèi)似比如mysql的java驅(qū)動(dòng)一樣。nodejs有好幾個(gè)mongodb的第三方驅(qū)動(dòng)。和jdbc不一樣,沒(méi)有標(biāo)準(zhǔn)。所以需要到驅(qū)動(dòng)的網(wǎng)站上去了解學(xué)習(xí)怎么使用它訪問(wèn)mongodb。
    2015-01-01
  • 手把手教你更優(yōu)雅的修改node_modules里的代碼

    手把手教你更優(yōu)雅的修改node_modules里的代碼

    這篇文章主要給大家介紹了關(guān)于如何更優(yōu)雅的修改node_modules里的代碼的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2023-02-02
  • NVM切換不同版本node的實(shí)現(xiàn)步驟

    NVM切換不同版本node的實(shí)現(xiàn)步驟

    nvm是Node.js的版本管理器,可以讓我們輕松地在不同的Node.js版本之間進(jìn)行切換,本文就來(lái)介紹一下NVM切換不同版本node的實(shí)現(xiàn)步驟,感興趣的可以了解一下
    2023-12-12
  • Webpack打包構(gòu)建太慢試試這幾個(gè)提升打包速度方案

    Webpack打包構(gòu)建太慢試試這幾個(gè)提升打包速度方案

    在大型項(xiàng)目開(kāi)發(fā)中,Webpack打包速度過(guò)慢會(huì)嚴(yán)重影響開(kāi)發(fā)效率,本文介紹了幾種優(yōu)化Webpack打包速度的策略,包括減少文件搜索范圍、優(yōu)化Loader緩存、并行處理、減少打包體積、開(kāi)發(fā)模式優(yōu)化以及插件優(yōu)化等,需要的朋友可以參考下
    2024-11-11
  • 如何在Nodejs中使用模塊fs文件系統(tǒng)

    如何在Nodejs中使用模塊fs文件系統(tǒng)

    這篇文章主要介紹了如何在Nodejs中使用模塊fs文件系統(tǒng),對(duì)nodejs感興趣的同學(xué),可以參考下
    2021-05-05
  • Nodejs實(shí)現(xiàn)WebSocket代碼實(shí)例

    Nodejs實(shí)現(xiàn)WebSocket代碼實(shí)例

    這篇文章主要介紹了Nodejs實(shí)現(xiàn)WebSocket代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • 淺析Node.js中使用依賴注入的相關(guān)問(wèn)題及解決方法

    淺析Node.js中使用依賴注入的相關(guān)問(wèn)題及解決方法

    這篇文章主要介紹了淺析Node.js中使用依賴注入的相關(guān)問(wèn)題及解決方法,Node.js是一個(gè)將JavaScript應(yīng)用運(yùn)行于服務(wù)器端的框架,需要的朋友可以參考下
    2015-06-06

最新評(píng)論

广州市| 宜章县| 卢湾区| 苍南县| 高平市| 尼玛县| 天气| 新郑市| 双辽市| 珠海市| 彭州市| 泰和县| 云浮市| 怀安县| 安徽省| 武鸣县| 天等县| 香河县| 海原县| 商都县| 易门县| 承德市| 延津县| 皮山县| 通海县| 突泉县| 竹溪县| 三原县| 博湖县| 保亭| 新闻| 太谷县| 岚皋县| 叶城县| 乐业县| 江安县| 黄石市| 广水市| 邯郸县| 仁布县| 东莞市|