来自同一应用程序内部的调用节点路由
Call node route from inside same application
假设我有一个nodejs应用程序,它公开了一个路由:
app.get('/something/resource', function(req, res) { // ... });
该路由对公众和应用程序本身都可用。我想从同一个应用程序调用函数内部的这个路由,并处理它的响应。我最接近的方法是使用请求模块:
request(req.headers.host + '/something/resource', function(err,res,body) { //... });
然而,我得到的错误是"无效协议:127.0.0.1'"
如果我不使用主机头,我会得到"无效的URI'/某物/资源"
知道我如何从内部访问应用程序的api吗?
"无效协议"可能意味着它在URL前面缺少协议说明符(一些"http://"),请尝试:
request("http://" + req.headers.host + '/something/resource', function(err,res,body) { //... });
还有两点:作为主机,您可以将其硬编码为"localhost"。记住端口:通常,node.js被调用来侦听其他端口(默认的http端口80除外)。所以最好将端口添加到url:
request("http://" + req.host + ":" + req.port + '/something/resource', function(err,res,body) { //... });
相关文章:
- 如何从模块链中调用函数.导出到节点中
- 我应该总是将模块调用到var中,还是在节点中立即执行
- 在源节点上调用 stop() 是否会触发已结束的事件
- 节点.js“已调用回调”.但是没有任何其他回调
- 节点 js 在启动时调用函数一次
- 在每个循环上完成异步调用,然后转到下一个节点 js
- 节点JS中的函数调用
- jquery复选框树是否支持“;展开直到节点“;或“;扩展父母”;当程序地调用“;检查”;
- 不能调用未定义节点.js的方法“forEach”
- 同步 JavaScript 调用节点 js- 执行 GET in for 循环
- 从 HTML 调用节点请求
- 如何在 TypeScript / JavaScript 中调用节点.js脚本
- 从 PHP 脚本调用节点
- 如何在Angular JS中多次调用节点点击指令
- 来自同一应用程序内部的调用节点路由
- 理解这个_(STRING)调用节点RED
- 如何区分何时使用xargs调用节点
- 代码在运行节点控制台时有效,但在调用节点
时无效 - 如何从函数内部调用节点模块
- 角度.js和节点.js页面加载时的调用节点