WINDOWS RESTful 服务上的 cURL POST 命令行

2023-12-01

我的问题:使用命令行工具来卷曲我的本地主机服务器,同时发送一些数据和我的 POST 请求不起作用。

似乎是什么导致了错误:想象一下这样的事情

  1. curl -i -X POST -H 'Content-Type: application/json' -d '{"data1": "data goes here", "data2": "data2 goes here"}' http:localhost/path/to/api

返回数据结果

curl: (6) Could not resolve host: application; No data record of requested type
curl: (6) Could not resolve host: data goes here,; No data record of requested type
curl: (6) Could not resolve host: data2; No data record of requested type
curl: (3) [globbing] unmatched close brace/bracket at pos 16

经过一番搜索后,我发现问题不可能是用于请求的语法,因为它适用于 UNIX shell。

您可能使用 Windows 吗?看起来就像一个完全破碎的外壳 这不能正确处理单引号和双引号。 我刚刚尝试了该命令行,它在我的 Linux 机器上运行良好。http://curl.haxx.se/mail/archive-2011-03/0066.html

我尝试解决那些“逃避它”的问题,但它仍然不起作用

2.

curl -i -X POST -H '内容类型:application/json' -d '{\"data1\": \"数据在此处\", \"data2\": \"数据2在此处\"}' http://localhost/路径/to/api

3.

curl -i -X POST -H '内容类型:application/json' -d '{\"data1\": \"数据在此处\", \"data2\": \"数据2在此处\"}' http://localhost/路径/to/api

所以我放弃了。 Windows 似乎搞乱了 POST 上发送的 JSON 对象


我在 win7 x64 笔记本电脑上遇到了同样的问题,并且能够使用标记为的curl 版本让它工作Win64 - 通用 SSL通过使用非常相似的命令行格式:

C:\Projects\curl-7.23.1-win64-ssl-sspi>curl -H "Content-Type: application/json" -X POST http://localhost/someapi -d "{\"Name\":\"Test Value\"}"

它与第二个转义版本的区别仅在于在转义版本和标头参数值周围使用双引号。肯定更喜欢 linux shell 语法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WINDOWS RESTful 服务上的 cURL POST 命令行 的相关文章

随机推荐