1. 程式人生 > >node.js--初步入門使用

node.js--初步入門使用

pat 讀取文件 add 對象 doc form function meta ner

1.Hello World

  var http=require(‘http‘);
  //創建服務器
  var server=http.createServer(function(req,res){
  //requsert:請求內容
  //response:響應內容
  console.log(‘hello world‘);
  //node平臺提供的方法
  res.writeHead(200,{"Content-type":"text/html;charset=utf-8"})
  //設置請求頭信息
  res.end(‘結束‘);
  //結束。響應,一定要加,要不會一直響應

  })

  //監聽

  server.listen(8888,‘127.0.0.1‘);

2.讀取文件

  var http=require(‘http‘);
  //引入http模塊
  var fs=require(‘fs‘);
  var server=http.createServer(function(req,res){
  //獲取路徑
  var path=req.url;

  console.log(path);
  //node沒有web容器的概念
  if(path==‘/the‘){
      //讀取文件fs.readFile(請求路徑,回調函數))
      fs.readFile(path,function(err,data){
      data=‘成功了‘;


      res.writeHead(200,{"Content-type":"text/html;charset=utf-8"})
      res.end(data);
      })
    }else{
      res.writeHead(404,{"Content-type":"text/html;charset=utf-8"})
      res.end("請輸入網站");
    }


  })

    server.listen(8888,‘127.0.0.1‘);

3 GET和POST表單提交方式

  --html文件

  

  <!DOCTYPE html>


    <html lang="en">
      <head>
        <meta charset="UTF-8">
        <title>get和post方式</title>
      </head>

      <body>

          //method:兩種提交方式:get和post
        <form action="http://127.0.0.1:8888/" method="post">
          用戶名:<input type="text" name="username" /></br></br>
          密&nbsp;&nbsp;碼:<input type="password" name="passwd"/></br></br>
          性別:<input type="radio" value="女" name="sex"/>女<input type="radio" value="男 name="sex"/> 男</br></br>
          愛好:<input type="checkbox" name="hobby" value="play" />玩
             <input type="checkbox" name="hobby" value="eat"/> 吃
             <input type="checkbox" name="hobby" value="sleep"/>睡<br><br>
          <input type="submit" value="提交"/>
        </form>
      </body>
    </html>

  --get.js

  

    var http=require(‘http‘);
    var url=require(‘url‘);

    var server=http.createServer(function(req,res){

      if(req.url==‘/favicon.ico‘){
        return
      }
      //url.parse解析url 解析為對象的形式 pathname query path
      //url.parse(url,true) 把查詢參數query轉化為對象
      console.log(typeof url.parse(req.url,true).query);
      console.log(url.parse(req.url,true).query);
      var info=url.parse(req.url,true).query;

      console.log(info);
      console.log(typeof info);

      res.writeHead(200,{"Content-type":"text/html;charset=utf-8"});
      res.end("用戶的姓名:"+info.username);
  }).listen(8888,‘127.0.0.1‘)

  --post.js

  

    var http=require(‘http‘);
    var querystring=require(‘querystring‘);

    http.createServer(function(req,res){

      if(req.url==‘/favicon.ico‘){
        return
      }

      var all=‘‘;
      //異步請求
      //post請求,數據分段請求。每一個數據塊就是一個chunk。加載數據塊
      req.addListener(‘data‘,function(chunk){

        console.log(chunk);
        all+=chunk;
      })
      //post數據請求接收完畢。end檢測是否接收完畢
      //querystring.parse(a) 把a轉化為對象
      req.addListener(‘end‘,function(chunk){
        console.log(querystring.parse(all));
      })

     console.log(typeof querystring.parse(all))

       res.end();
    }).listen(8888,‘127.0.0.1‘);

node.js--初步入門使用