【发布时间】:2017-07-24 04:15:25
【问题描述】:
我正在使用 Node.js 开发 RESTFUL api。这是应该发生的事情:
- 网页通过 SSL 向节点服务器发送 REST 请求(该请求包括一个 cookie:ci_session,我们将使用它进行身份验证)
- 节点服务器查找请求操作的权限代码(每个资源都有自己的代码)
- 向 PHP 服务器发送一个 RESTful 请求,以使用步骤 1 中的 cookie 和步骤 2 中的权限代码进行身份验证。
- PHP 服务器响应成功/失败
- 如果返回成功,则让节点执行请求的资源
- 第 1 步的页面得到响应
我的问题在第 3 步。
//Using 'Restler'(which is built on 'Request')
var rest = require("restler");
//Authenticate
//This is Hanging
rest.get( 'URL_TO_PHP_REST', { headers:{
"Cookie": v_cookie
}
}
).on("success", function(){...});
调试:
- 我已经用 Postman 测试了我所有的 RESTful 端点;他们工作。
- 如果我在第 3 步中省略了 cookie,则请求会立即通过(尽管用户总是无法通过身份验证检查)
- Cookie 和 URL 是它们的预期值
Cookie 示例:
ac=0atu2rrp5ifeet0s5kdb62rbeov7ktnr
Restler 如何发送请求
//Parameters
//url = 'URL_TO_PHP_REST'
//options = {headers:{"Cookie":"ac=0atu2rrp5ifeet0s5kdb62rbeov7ktnr"}}
var request = new Request(url, options);
request.on('error', function() {});
process.nextTick(request.run.bind(request));
return request;
【问题讨论】:
-
确切的 Postman 命令行是什么?
-
我解决了这个问题(见下文)。但感谢您提供帮助。