我正在开发一个使用HTTParty发出HTTP请求的Rails应用程序。如何使用HTTParty处理HTTP错误?具体来说,我需要捕获HTTP502和503以及连接被拒绝和超时错误等其他错误。 最佳答案 HTTParty::Response的实例有一个code属性,其中包含HTTP响应的状态代码。它以整数形式给出。所以,像这样:response=HTTParty.get('http://twitter.com/statuses/public_timeline.json')caseresponse.codewhen200puts"Al
下面的simple_client.rb文件在我的仿真cas服务器上工作得很好;然而,casport.rb文件(oa-casportOmniAuth策略的主文件)没有正确设置或传递header/格式。它需要动态分配给类以允许初始化程序选项能够创建它们,但我不知道除了我在这里尝试的方法之外还能怎么做。我相当确定我在某个时候可以正常工作,但鉴于客户端文件的简单性,我看不到为什么这不起作用的任何其他解释。非常感谢任何帮助,了解如何在我的Casport类中动态设置HTTParty的format和headers设置。实际上,它只是不断返回该特定用户的HTMLView。simple_client.r
我正在尝试使用HTTParty发出POST请求,其中我需要内容类型为文本/xml。我怎样才能做到这一点?现在我正在调用的API正在提示我没有发送任何xml。如果我使用curl调用它,我会得到同样的错误,除非我将内容类型指定为text/xml。 最佳答案 HTTParty.posturl,:body=>xml,:headers=>{'Content-type'=>'text/xml'} 关于ruby-HTTParty和text/xml,我们在StackOverflow上找到一个类似的问题:
我想知道是否可以使用HTTParty请求结果作为对象。目前我使用字符串键来访问结果的值:result["imageurl"]或result["address"]["street"]如果我使用JavaScript,我可以简单地使用:result.imageurl或result.address.street 最佳答案 使用hashie的Mash类gem。tweet=Hashie::Mash.new(HTTParty.get("http://api.twitter.com/1/statuses/public_timeline.json")
我目前正在开发一个Rails应用程序,我需要在其中向外部Web服务动态发送XML请求。我以前从未这样做过,我有点迷茫。更准确地说,我需要在更新订单状态时向我的物流合作伙伴发送请求。例如,当订单被确认时,我需要发送客户地址、取货地址等数据......我打算使用XML构建器动态生成请求,并基于thisexample使用Net:HTTP或HTTParty发布请求.这样做正确吗?如何在Controller外部生成XML请求,然后在HTTParty或Net:HTTP中使用它?谢谢你的帮助,克莱姆 最佳答案 这个方法会很好用。至于如何在需要的地
我需要将一些xml发布到网络服务,并且我正在尝试使用HTTParty。有人可以举例说明我是如何这样做的吗?这是我需要发布的XML格式:到目前为止,这是我的类(class):require'httparty'classWebserviceincludeHTTPartyformat:xmlbase_uri'mysite.com'default_params:authorization=>'xxxxxxx'defself.add_candidate(first_name,last_name,email,gender)post('/test.xml',:body=>"")endend我不太确定
在我的新Rails应用程序中,它是一个API消费者/客户端。我正在使用httParty来请求。我正在使用这篇文章中建议的代码http://www.binpress.com/tutorial/ruby-tutorial-building-a-robust-json-api-client/140defhandle_caching(options)ifcached=$redis.get(cache_key(options))eval(cached)elseyield.tapdo|results|$redis.set(cache_key(options),results)endendend但是
Bugsnag报告说在生产中不时会出现IO::EAGAINWaitReadable异常。IO::EAGAINWaitReadable:Resourcetemporarilyunavailable-readwouldblock通过HTTParty的HTTP请求引发异常,最终导致Ruby2.1.3中的net/protocol.rb:153:inread_nonblock。为什么我得到IO::EAGAINWaitReadable?为什么有时HTTP请求会阻塞?为什么不让他们阻止,这有什么关系? 最佳答案 处理IO::EAGAINWaitR
我希望我的rubyonrails应用程序中的用户能够向我的外部工单管理系统squishlist.com提交工单。他们有一个api和说明如下。您需要进行身份验证并获取token,然后使用token提交票证。来自squishlist。#getthetokenhttps://api.squishlist.com/auth/?cfg=testcorp&user_key=privatekey&api_key=TEST-KEY-12345=>{"token":"authtoken","expires":"2010-06-1613:31:56"}#andthentheticketwiththet
偶尔,当我访问带有HTTPParty或Mechanize的网站时,我会收到此错误:hostname"www.example.com"doesnotmatchtheservercertificate我可以看到thereisaworkaround如果您使用open方法,但我不确定如何利用上述gems。Mechanize的堆栈跟踪:agent=Mechanize.newagent.read_timeout=180agent.open_timeout=180agent.user_agent_alias='MacSafari'agent.redirect_ok=:allagent.follow_