【问题标题】:Error when posting data with cURL使用 cURL 发布数据时出错
【发布时间】:2014-09-15 18:17:27
【问题描述】:

我已经编写了以下 curl 命令。

curl -v -X POST -H 'Accept: application/json' 
-H 'Content-Type: application/json' -u username:password 
-d 'Id=5&Email=add@ress.com&OptInType=0&EmailType=0&DataFields=null&Status=0}' 
https://api.dotmailer.com/v2/contacts

但是,当我在 Powershell 中运行时,它会返回以下错误

"message":"无法解析请求的正文 内容类型\"应用程序/json\" ERROR_BODY_DOES_NOT_MATCH_CONTENT_TYPE"}

这是详细的服务器响应

  • 在 DNS 缓存中找不到主机名
  • 正在尝试 94.143.104.204...
  • 连接到 api.dotmailer.com (94.143.104.204) 端口 443 (#0)
  • 成功设置证书验证位置:
  • CAfile:C:\Program Files\cURL\bin\curl-ca-bundle.crt CApath:无
  • SSLv3、TLS 握手、客户端问候 (1):
  • SSLv3、TLS 握手、服务器问候 (2):
  • SSLv3、TLS 握手、CERT (11):
  • SSLv3,TLS 握手,服务器完成 (14):
  • SSLv3、TLS 握手、客户端密钥交换 (16):
  • SSLv3,TLS 更改密码,客户端问候 (1):
  • SSLv3,TLS 握手,完成 (20):
  • SSLv3,TLS 更改密码,客户端问候 (1):
  • SSLv3,TLS 握手,完成 (20):
  • 使用 TLSv1.0 / AES128-SHA 的 SSL 连接
  • 服务器证书:
  • 主题:C=GB; ST=英格兰; L=伦敦; OU=DDG; O=dotMailer 有限公司; CN=*.dotmailer.com
  • 开始日期:2012-01-16 15:51:40 GMT
  • 有效期:2015-01-16 15:51:40 GMT
  • subjectAltName: api.dotmailer.com 匹配
  • 发行人:C=BE; O=GlobalSign nv-sa; CN=GlobalSign 组织验证 CA - G2
  • SSL 证书验证正常。
  • 使用 Basic 和用户“用户名”的服务器身份验证 *POST /v2/contacts HTTP/1.1 *授权:基本 XXXpdXNlci0zNGFmNWU0NTdmYTJAYXBpY29ubmVjdG9yLmNvbTpzaW1vbmUxMjM=
  • 用户代理:curl/7.37.0
  • 主机:api.dotmailer.com
  • 接受:应用程序/json
  • 内容类型:应用程序/json
  • 内容长度:72
  • 上传完全发送:72 个字节中的 72 个
  • HTTP/1.1 400 错误请求
  • 缓存控制:无缓存
  • 编译指示:无缓存
  • 内容类型:应用程序/json; charset=utf-8
  • 过期:-1
  • 日期:2014 年 7 月 24 日星期四 08:46:46 GMT
  • 内容长度:139

{"message":"无法解析请求的正文 内容类型“应用程序/json” ERROR_BODY_DOES_NOT_MATCH_CONTENT_TYPE"}

与主机 api.dotmailer.com 的连接 #0 保持不变

谁能指出我正确的方向以正确执行我的命令? 谢谢。

【问题讨论】:

    标签: json powershell post curl


    【解决方案1】:

    您在 -d 中的数据似乎不是 json 格式。尝试jsonlint 验证 json 格式。或者,如果您尝试发布文本数据,请使用 text/plain 作为 Content-type。

    【讨论】:

    • 我知道。我也尝试过json格式{"Id":5,"Email":"add@ress.com","DataFields":null,"Status":0},但还是得到了和上面一样的错误信息。
    • 是的,正如我在之前的评论中所说的那样。
    猜你喜欢
    • 1970-01-01
    • 2015-03-23
    • 2012-12-08
    • 2014-01-22
    • 2015-06-03
    • 1970-01-01
    • 2018-04-17
    • 2011-08-27
    • 2011-08-26
    相关资源
    最近更新 更多