1. 程式人生 > >node.js_POST服務--配合ajax通訊

node.js_POST服務--配合ajax通訊

服務端
/載入node按照時自帶http.js檔案,這個檔案返回了一個物件,物件下有一個createServer的方法
var http=require("http");
// var strs=require("querystring");
//建立node服務,並且返回
//req客戶端向伺服器請求的物件
//res服務端向客戶端傳送的物件
var server=http.createServer(function (req,res) {
    //偵聽當資料傳送過來時,這裡的引數d是一個二進位制資料流,是由客戶端send(內容)發過來的資料
    var data="";
    req.on("data",function (d) {
        data
+=d; }); req.on("end",function () { var obj=JSON.parse(data); obj.login="ok"; //這是伺服器客戶端傳送的訊息,這裡是寫入傳送的訊息頭, //200 表示當前通訊成功 //"Content-Type":"text/plane" 設定當前傳送內容文字自由化 //"Access-Control-Allow-Origin":"*"新增跨域的白名單是所有網站 res.writeHead(200,{"Content-Type":"
text/plane","Access-Control-Allow-Origin":"*"}); //寫入向客戶端傳送的訊息 res.write(JSON.stringify(obj)); //結束髮送 res.end(); }) }); //偵聽設定,設定當前的服務的埠是3003,當前服務開啟的ip是10.9.164.92 server.listen(3004,"10.9.164.92",function () { console.log("啟動服務,開始偵聽"); });

 

通訊
 var obj={name:"xietian",age:20};
        var xhr=new XMLHttpRequest();
        xhr.addEventListener("load",loadHandler);
//        傳送資料不在url後面填寫,將資料在send方法中傳送,只能傳送文字,xml,二進位制資料
        xhr.open("POST","http://10.9.164.92:3004");
        xhr.send(JSON.stringify(obj));
        function loadHandler(e) {
            console.log(JSON.parse(xhr.response));
        }