nodeJS 获取get方式的传值
1.数组方法 split 切割 获取
1.获取当前网址url
var url = http://www.login.com/index?name=kang&pass=kjh8619
2.存储获取的数据
var GET = {};
3.利用数组方法切割url
1. var arr = url.split("?");
第一次切割
arr[0] = “http://www.login.com/index”
arr[1] = “name=kang&pass=kjh8619”
2. var arr2 = arr[1].split("&");
第二次切割
arr2[0] = “name=kang”
arr2[1] = “pass=kjh8619”
3. for(var i = 0; i < arr2.length; i++){
var arr3 = arr2[i].split("=")
GET[arr3[0]] = arr3[1];
}
第三次切割并且将获取到的数据保存到GET中。
4.打印出数据
console.log(GET);
输出结果为:
E:\node\get>node array
{ name: 'kang', pass: 'kjh8619' }
2.利用querystring获取get传值
1.引入querystring模块
var querystring = require("querystring");
2.获取到网址的url
var url = "http://www.login.com/index?name=kang&pass=kjh8619";
3.切割url
var arr = url.split("?");
arr[0] = “http://www.login.com/index”
arr[1] = “name=kang&pass=kjh8619”
4.存储数据
var json = querystring.parse(arr[1]);
5.打印数据
console.log(json);
结果:
[Running] node "e:\node\get\array.js"
{ name: 'kang', pass: 'kjh8619' }
3.利用url模块获取数据
1.引入url模块
var urlLib = require("url");
2.获取url
var url = "http://www.login.com/index?name=kang&pass=kjh8619";
3.解析url
var obj = urlLib.parse(url);
4.打印解析数据
console.log(obj);
结果:
[Running] node "e:\node\get\array.js"
Url {
protocol: 'http:',
slashes: true,
auth: null,
host: 'www.login.com',
port: null,
hostname: 'www.login.com',
hash: null,
search: '?name=kang&pass=kjh8619',
query: 'name=kang&pass=kjh8619',
pathname: '/index',
path: '/index?name=kang&pass=kjh8619',
href: 'http://www.login.com/index?name=kang&pass=kjh8619' }
url模块解析url时,加入true参数可以同时解析qurey数据;
var urlLib = require("url");
var url = "http://www.login.com/index?name=kang&pass=kjh8619";
var obj = urlLib.parse(url,true);
console.log(obj.query);
结果:
[Running] node "e:\node\get\array.js"
[Object: null prototype] { name: 'kang', pass: 'kjh8619' }