我想集成PayuMoney支付网关到我的rails应用程序。我想使用post请求重定向到支付网关URL,所以我使用HTTparty来重定向和POST请求到payumoney URL。
我的控制器:
class ClientFeePaymentsController < ApplicationController
include HTTParty
def fee_payment
uri = URI('https://test.payu.in/_payment.php')
res = Net::HTTP.post_form(uri, 'key'
谁能解释一下为什么我可能会看到这个堆栈(由HTTParty::post请求引起),而对该方法的调用看起来像这样:
begin
response = HTTParty::post(url, options)
rescue
logger.warn("Could not post to #{url}")
rescue Timeout::Error
logger.warn("Could not post to #{url}: timeout")
end
堆栈:
/usr/local/lib/ruby/1.8/timeout.rb:64
有可能让HTTParty反序列化GET到强类型ruby对象的结果吗?例如
class Myclass
include HTTParty
end
x = Myclass.get('http://api.stackoverflow.com/1.0/questions?tags=HTTParty')
puts x.total
puts x.questions[0].title
现在,它将其反序列化为散列。
puts x["total"]
我的问题是HTTParty是否支持这个OTB,而不是通过安装额外的gems。
编辑
我仍然是Ruby的新手,但我记得类字段都
我试图登录到一个网站,其中有以下接口: POST post JSON data:{UserName:xxx,Pasword:xxx,SecondFactor:[optional]}保存CookieContainer & header["SecretKey"]传递给下一次调用,否则你将得到409冲突我写了以下脚本,但得到的回应是:输入用户名和密码有什么问题?
!/usr/bin/env ruby
require "rubygems"
require "httparty"
include HTTParty
class TheSite
从表面上看,当我使用HTTParty或Mechanize访问一个网站时,我会得到以下错误:
hostname "www.example.com" does not match the server certificate
如果您使用方法,我可以看到这个open,但是我不知道如何利用上面的宝石。
用于Mechanize的堆栈跟踪
agent = Mechanize.new
agent.read_timeout = 180
agent.open_timeout = 180
agent.user_agent_alias
我在使用Ruby的HTTParty库向API端点发出POST请求时遇到了困难。我正在与之交互的API是,它们的端点需要身份验证。我已经能够使用HTTParty成功地发出一个经过身份验证的GET请求。
您可以在示例代码中看到:
user = "gratitude_test"
api_key = "5962b93a-5bf7-4cb6-ae6f-aa4114c5e4f2"
# I have included real credentials since the above is merely a test account.
HTTParty.get("ht
我正在尝试使用rest-client或httparty向第三方API发出一些http请求。我正在运行的代码是:
在航站楼:
httparty 'http://swapi.co/api/people/1'
它抛出了这个错误:
/Users/user_name/.rvm/rubies/ruby-2.2.3/lib/ruby/2.2.0/net/http.rb:879:in `initialize': No route to host - connect(2) for "swapi.co" port 80 (Errno::EHOSTUNREACH)
from
我正在尝试调用我的自定义api,它使用回形针上传文件,它在使用的本地运行良好,但当我尝试调用api并为heroku部署的应用程序上传文件时,发生了以下错误。
NoMethodError: undefined method `bytesize' for #<Array:0x00000006e71980>
from /home/umair/.rvm/rubies/ruby-1.9.2-p320/lib/ruby/1.9.1/net/http.rb:1735:in `send_request_with_body'
from /home/umair/.rvm
以下内容连接到API的服务器
httparty -a post -H Content-Type:application/json "https://test.co.uk/interface/search"
并返回错误消息(这是设计好的)。
但是,如果添加了另一个标头:
httparty -a post -H Content-Type:application/json -H Accept-Encoding:gzip,deflate "https://test.co.uk/interface/search"
ruby JSON解析器中出现错误
.rbenv/ver