该模块的源代码地址:
https://github.com/request/request
注意:
代码以apicloud访问云端数据库为例子,所以有自定的heads信息,测试时,将这些无用信息去掉即可
安装request模块
node install request
加载request模块
var request = require('request');
方法一:
使用json,对应的值为要提交的json数据
var r=request({
url: 'https://d.apicloud.com/mcm/api/user/login',
method: "POST",
headers: {
"X-APICloud-AppId": APP_ID,
"X-APICloud-AppKey": appKey
},
json:{"username":"admin","password":"123456"}//提交的数据,并且返回的body也是json类型
},
function (error, response, body) {
console.log('v:'+1);
console.log("body:"+JSON.stringify(body));
console.log("userId:"+body.userId)
if (!error && response.statusCode == 200) {
console.log(body) //
}
//var bodyJson=JSON.parse(body);
resp.json(body);
})
方法二
json属性为true,将json数据放到body中
request({
url: 'https://d.apicloud.com/mcm/api/user/login',
method: "POST",
json:true,//发送数据和返回数据都是json类型
headers: {
"X-APICloud-AppId": APP_ID,
"X-APICloud-AppKey": appKey
},
body: {"username":"admin","password":"123456"}
},
function (error, response, body) {
console.log('v:'+1);
console.log("body:"+JSON.stringify(body));
console.log("userId:"+body.userId)
if (!error && response.statusCode == 200) {
console.log(body) //
}
//var bodyJson=JSON.parse(body);
resp.json(body);
})
方法三
指定json属性为true,并调用form()方法提交json数据
var r=request({
url: 'https://d.apicloud.com/mcm/api/user/login',
method: "POST",
json:true,//发送数据和返回数据都是json类型,此处必须设置为true
headers: {
"X-APICloud-AppId": APP_ID,
"X-APICloud-AppKey": appKey
},
},
function (error, response, body) {
console.log('v:'+1);
console.log("body:"+JSON.stringify(body));
console.log("userId:"+body.userId)
if (!error && response.statusCode == 200) {
console.log(body) //
}
//var bodyJson=JSON.parse(body);
resp.json(body);
})
r.form({"username":"admin","password":"123456"})
总结:
在option中的json属性,要么为true,要么是提交的json数据,返回的body,自动转换为json类型