代码之家  ›  专栏  ›  技术社区  ›  sergtk

如何使用curl在Windows下发布PUT请求?

  •  3
  • sergtk  · 技术社区  · 14 年前

    我需要在windows下使用PUT请求通过curl.exe发布XML数据。

    在卷曲的帮助下我发现:

    -d/--data <data>   HTTP POST data (H)
    

    我应该供应什么 <data> ?

    3 回复  |  直到 6 年前
        1
  •  14
  •   manuel aldana    14 年前

    curl示例调用

    # with inlining plain data
    curl -X PUT -d "payload" http://localhost
    # referrring file
    curl -X PUT -d @myXmlFile.xml http://localhost
    

    如果您的windows curl端口不支持它,请 cygwin . 它是一个类似于linux的windows环境,还提供了“适当的”curl。

        2
  •  7
  •   Stefan    13 年前

    在windows中,如果双引号参数本身包含双引号字符,则双引号必须是双引号。

    例如,输入'This is“quoted”payload'作为“This is”“quoted”“payload”,这与在Unix中非常不同。

    例子:

    curl -X PUT -d "This is ""quoted"" payload" http://localhost
    
        3
  •  3
  •   Paul Adamson    10 年前

    在windows中,您需要将@ 里面 要发送的文件的引号:

    curl -XPUT --data-binary "@uploadme.txt"
    

    否则,当它试图将文件内容用作url时,会出现奇怪的错误:

    curl: (6) Couldn't resolve host 'upload'
    curl: (6) Couldn't resolve host 'me!'
    

    (upload me.txt包含“上传我!”)