为什么savon client.call使用带有有效负载而不是POST的GET请求?
client.call(:schedule_email_message, xml: '<soapelem />') # actually a GET request, with payload. Why not a POST request?
萨翁宝石版本:2.11.1为什么savon client.call使用带有有效负载而不是POST的GET请求?
你怎么知道这是一个GET?
如果你看看lib/savon/operation.rb
94行(我的版本2.3.0),那么你会看到有一个HTTPI.post
的引用。 Savon使用HTTPI gem作为您计算机上安装的任何httpclient gem的接口。 自从2.11.1以来,我不确定是否发生了变化。
https://github.com/savonrb/savon/blob/version2/lib/savon/operation.rb
谢谢,是的,我注意到了我自己。我不完全确定,我会再调试一些。在调用中,Savon是否首先执行GET来获取WSDL,然后如果指定的方法(':schedule_email_message')在POST中,则是POST操作? – Magne
我猜**它首先获取WSDL。我宁愿不使用WSDL,因为我认为它太琐碎。 –
@tjarrat你知道吗? – Magne