使用curl进行身份验证

时间:2013-10-14 03:47:55

标签: node.js curl

我正在运行本地node.js服务器。我需要用curl发出一个POST请求。这个请求应该对用户进行身份验证。所以我在请求中指定了用户名和密码。问题是我收到一个错误,即无法找到令牌,即使登录凭据正确(我可以直接登录到远程服务器)。

curl  --user username:mypassword -X POST -d '["some data"]' "http://0.0.0.0:3000/problems/problemId"

服务器响应:

can not find match token bXNoYXZsb4Z1

可能是什么问题?我是否正确使用卷曲?

1 个答案:

答案 0 :(得分:0)

在您的问题中没有关于服务器端的详细信息,但问题可能来自POST数据的编码。

来自curl的手册页:

  

-d, - data与--data-ascii相同。要纯数据二进制发布数据,您应该使用--data-binary选项。要对表单字段的值进行URL编码,您可以使用--data-urlencode。

所以你应该尝试这些不同的选择。

也可以删除-X选项。从手册页:

  

通常您不需要此选项。使用专用命令行选项可以调用各种GET,HEAD,POST和PUT请求。