Savon可以允许重定向吗? 302“错误”

时间:2014-02-19 20:50:34

标签: ruby-on-rails ruby redirect soap savon

是否有可能让Savon允许重定向?我目前正在收到302 HTTP错误,但实际上这应该是重定向而不是错误。

2 个答案:

答案 0 :(得分:1)

Savon使用httpi进行连接。 httpi本身是curb,em_http,excon,httpclient,net_http和rack的包装。

文件em_http.rb包含

注释
automatic redirect following

不支持httpi 。 那么如果可能的话,我会立即尝试将调用发送到重定向目标。

要查找“真实”网址,您可以使用curl之类的工具,例如:

curl -I www.yahoo.in

给你

HTTP/1.1 301 Moved Permanently
Date: Thu, 18 Aug 2016 18:50:05 GMT
...
Cache-Control: max-age=3600, public
Location: http://in.yahoo.com/
Vary: Accept-Encoding
Content-Type: text/html; charset=UTF-8
Age: 0
Connection: keep-alive
Server: ATS

Location:键显示您想要接下来尝试的地址。您可能会获得另一个重定向。您必须先尝试,直到200 OK返回。

答案 1 :(得分:0)

您可以将Savon设置为遵循重定向,将follow_redirects选项设置为true。

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="card0">
  <div class="card-body">
    <form>
      <input name="age" id="age" value="XXX" type="hidden">
      <input name="user" id="user0" value="XXX" type="hidden">
    </form>
    <button class="btn btn-success copy">Copy</button>
  </div>
</div>

<div class="card1">
  <form>
    <input name="user" id="user1" value="" type="text">
  </form>
</div>

在这里找到:https://github.com/savonrb/savon/issues/243