2013-10-14 166 views
2

我正在运行本地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 

可以采取什么问题吗?我是否正确使用卷曲?

+0

你能检查我的答案是否正确吗? –

回答

0

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

curl手册页:

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

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

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

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