最近在尝试写node接口,其中有一个接口要调用外部接口获取数据,于是就有了下面的代码
1、安装request模块
npm install request -S
2、封装公用方法 requestFunc.js
//引入
const request = require('request');
var requestFunc = {
get(url) {
return new Promise(function(resolve,reject) {
request(url, function(err, response, body){
//err 当前接口请求错误信息
//response 一般使用statusCode来获取接口的http的执行状态
//body 当前接口response返回的具体数据 返回的是一个jsonString类型的数据
//需要通过JSON.parse(body)来转换
if(!err && response.statusCode == 200){
resolve(body)
}else {
reject(body)
}
})
})
},
post(url,params) {
return new Promise(function(resolve, reject) {
var requestData = params
request({
url: url,
method: "POST",
json: true,
headers: {
"content-type": "application/json",
},
body:requestData
}, function (error, response, body) {
if (!error && response.statusCode == 200) {
resolve(body)
}else {
reject(body)
}
});
})
}
};
module.exports = requestFunc;
3、使用
const { requestFunc } = require('../../utils');
const url = ' http://******'
const params = {
text: ""
}
requestFunc.post(url,params).then((res)=> {
console.log(res)
})
注:post方法亲测可用,get方法没合适的接口测 可测试后使用~