Net :: HTTP DELETE调用代理不工作(但得到了)

时间:2014-03-13 02:02:11

标签: ruby-on-rails ruby api proxy net-http

我尝试使用Net :: HTTP与代理和摘要密码进行DELETE。没有代理,一切都工作正常,或者是GET。

任何想法我做错了什么以及怎么做?

带有get的代码工作正常。

h = Net::HTTP.new uri.host, uri.port, proxy_host, proxy_port, proxy_user, proxy_password
req = Net::HTTP::Get.new uri.request_uri
res = h.request req

相同的代码并替换为DELETE无法正常工作

h = Net::HTTP.new uri.host, uri.port, proxy_host, proxy_port, proxy_user, proxy_password
req = Net::HTTP::Delete.new uri.request_uri
res = h.request req

我得到了

#<Net::HTTPBadRequest 400 Bad Request readbody=true>

知道可能是什么问题吗?我需要添加标题吗?

由于

1 个答案:

答案 0 :(得分:0)

我发现了我的问题。

我需要为内容类型添加一个正文。

h = Net::HTTP.new uri.host, uri.port, proxy_host, proxy_port, proxy_user, proxy_password
req = Net::HTTP::Delete.new uri.request_uri
req.body = "Content-type: application/xml"
res = h.request req

它现在有效。