node路徑參數(shù)獲取

字號:


    node文件,參數(shù)跟php等開發(fā)相似,單沒有后綴名
    比如訪問php的為 index.php?path=1&site=forasp
    那么node的訪問路徑為 index?path=1&site=forasp
    我們定義為 文件名?參數(shù)
    下面說一下node.js如何獲取頁面名稱和參數(shù)的
    看代碼
    var http = require("http");
    var url = require("url");
    function servername(){
    http.createServer(function(request, response)
    {
    var pathname = url.parse(request.url).pathname;
    var argsstr = url.parse(request.url).query;
    response.writeHead(200, {"Content-Type": "text/plain"});
    response.write("page is"+pathname);
    response.write("args is"+argsstr);
    response.end();
    }).listen(8888);
    }
    exports.start = servername;
    這里有一個url類,是node環(huán)境提供的首先引入該類文件
    通過庫的對象進(jìn)行獲取url內(nèi)容
    var pathname = url.parse(request.url).pathname;
    這里是獲取路徑名稱也就是頁面內(nèi)容,如果你的訪問路徑為 /a/b/c?參數(shù)
    那返回/a/b/c
    var argsstr = url.parse(request.url).query;
    這里是獲取整個?后的參數(shù),是個字符串,沒有解析對應(yīng)的變量內(nèi)容。這個需要自己解析一下或者我還沒有看到關(guān)于參數(shù)解析的內(nèi)容的。
    通過上面的代碼訪問
    反饋結(jié)果為 page is/indexargs ispath=1&site=forasp
    上面說錯了,解析很簡單,比如訪問為/?site=forasp&name=wangzhanzhizuo
    querystring(string)["site"]獲取的是forasp
    querystring(string)["name"]獲取的是wangzhanzhizuo
    上面就是對頁面url內(nèi)容的獲取,獲取后可以自己判斷選擇不同操作。