首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >savon HTTPI POST EOFError:已到达文件末尾

savon HTTPI POST EOFError:已到达文件末尾
EN

Stack Overflow用户
提问于 2013-06-25 20:52:06
回答 2查看 1.1K关注 0票数 0

我尝试使用savon v2.0.3及其抛出的错误来使用SOAP服务,但我无法对其进行调试。

我有以下代码

代码语言:javascript
复制
client = Savon.client(wsdl: $APP_CONFIG["billing_url"])
response = client.call({{method_name_in_symbolic_form}}, message: {:numbers => "50608289"})

我从配置文件中获得了url,并且它是正确的,并且method_name_in_symbolic_form方法也存在。

现在会产生如下所示的错误:

代码语言:javascript
复制
EOFError: end of file reached
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/protocol.rb:141:in `read_nonblock'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/protocol.rb:141:in `rbuf_fill'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/protocol.rb:122:in `readuntil'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/protocol.rb:132:in `readline'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:2562:in `read_status_line'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:2551:in `read_new'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:1319:in `block in transport_request'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:1316:in `catch'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:1316:in `transport_request'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:1293:in `request'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/httpi-2.0.2/lib/httpi/adapter/net_http.rb:33:in `block in request'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/httpi-2.0.2/lib/httpi/adapter/net_http.rb:55:in `block in do_request'
    from /Users/ckgagan/.rvm/rubies/ruby-1.9.3-p327/lib/ruby/1.9.1/net/http.rb:745:in `start'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/httpi-2.0.2/lib/httpi/adapter/net_http.rb:54:in `do_request'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/httpi-2.0.2/lib/httpi/adapter/net_http.rb:31:in `request'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/httpi-2.0.2/lib/httpi.rb:137:in `request'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/httpi-2.0.2/lib/httpi.rb:109:in `post'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/savon-2.0.3/lib/savon/request.rb:29:in `call'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/savon-2.0.3/lib/savon/operation.rb:47:in `call'
    from /Users/ckgagan/.rvm/gems/ruby-1.9.3-p327@prime2_gemset/gems/savon-2.0.3/lib/savon/client.rb:36:in `call'

这个错误背后的原因是什么?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-21 17:32:05

甚至我也有一个类似的问题,通过将HTTPI适配器设置为net_http来解决它。

代码语言:javascript
复制
  HTTPI.adapter = :net_http
票数 1
EN

Stack Overflow用户

发布于 2013-06-25 21:09:44

你可以试试"rest-client“。我觉得应该能行得通。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17297869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档