Javascript 如何使用express在路由器内部调用restfull API
我想检索此链接中的数据:使用express.js 我使用react.js为前端创建了单页应用程序网站,因此我需要在后端调用此路径:Javascript 如何使用express在路由器内部调用restfull API,javascript,node.js,express,Javascript,Node.js,Express,我想检索此链接中的数据:使用express.js 我使用react.js为前端创建了单页应用程序网站,因此我需要在后端调用此路径:/shipping/check/cost,以获取数据。但我不知道如何请求内部路由器快车 我从未从别人的网站上使用过Restful API。 我只是复制了文档中的内容,但是在文档中使用了node.js而不是express.js 当我运行这个时,我什么也得不到 我的路线 import {Router} from 'express'; import * as Shippin
/shipping/check/cost
,以获取数据。但我不知道如何请求内部路由器快车
我从未从别人的网站上使用过Restful API。
我只是复制了文档中的内容,但是在文档中使用了node.js而不是express.js
当我运行这个时,我什么也得不到
我的路线
import {Router} from 'express';
import * as ShippingRouter from './controller'
const routes = new Router();
routes.post('/shipping/check/cost',ShippingRouter.checkCost);
export default routes;
控制器
import db from '../../config/conn';
import keys from '../../config/keys';
import jwt from 'jsonwebtoken';
import qs from 'querystring';
import request from 'request';
export const checkCost =(req,res)=>{
var options = {
"method": "POST",
"hostname": "api.rajaongkir.com",
"port": null,
"path": "/starter/cost",
"headers": {
"key": "mykey",
"content-type": "application/x-www-form-urlencoded"
}
};
var reqCost= https.request(options,function(ress){
var chunks = [];
ress.on("data", function (chunk) {
chunks.push(chunk);
});
ress.on("end", function () {
var body = Buffer.concat(chunks);
res.json(body.toString());
});
})
reqCost.write(qs.stringify({
origin: '501',
destination: '114',
weight: 1700,
courier: 'jne'
}));
reqCost.end();
}
我要检查的第一件事是,您使用的POST HTTP动词是否正确。您说过希望从API获取数据,在这种情况下,您应该使用get而不是POST(查看API文档了解更多信息)
除此之外,请检查我在哪里使用express以及如何处理调用。您没有显示在哪里调用API吗?另外,请详细说明“我什么也得不到”-你没有数据?你没有收到网络请求吗?你没有错吗?等