使用curl与authentication
我正在运行一个本地node.js服务器。 我需要用curl做一个POST请求。 这个请求的用户应该被authentication。 所以我在请求中指定了用户名和密码。 问题是,即使login凭据正确(我可以直接login到远程服务器),我也会得到一个令牌找不到的错误。
curl --user username:mypassword -X POST -d '["some data"]' "http://0.0.0.0:3000/problems/problemId"
服务器响应:
can not find match token bXNoYXZsb4Z1
可能是什么问题? 我是否正确使用curl?
在你的问题中没有足够的关于服务器端的细节,但问题可能来自POST数据的编码。
从curl
的手册页:
-d,–data与–data-ascii相同。 要发布纯二进制数据,您应该使用–data-binary选项。 要对表单字段的值进行URL编码,您可以使用–data-urlencode。
所以你应该尝试这些不同的select。
-X
选项也可以被删除。 从手册页:
通常你不需要这个选项。 各种各样的GET,HEAD,POST和PUT请求都是通过使用专用的命令行选项来调用的。