0

这里有一个超过四年的问题的完全相同的副本

鉴于它已经这么久了,我现在的问题是,这个答案仍然准确吗?现在有没有更好的方法来做到这一点?

4

1 回答 1

7

你做这样的事情。在控制器中编写一个函数,如下所示:

require 'net/http'
require 'net/https'
class custom_class
def get_api_call(args_hash)
    uri = URI.parse("sample_api_url")
    uri.query = URI.encode_www_form(what_args_you_want_to_send)
    http = Net::HTTP.new(uri.host, uri.port)
    http.use_ssl = true
    http.verify_mode = OpenSSL::SSL::VERIFY_NONE
    request = Net::HTTP::Post.new(uri.request_uri)
    http.request(request).body
end

private

def what_args_you_want_to_send
{
      "varname1" => var1,
      "varname2" => var2,
      "varname3" => var3,
      "varname4" => var4
}
end

该函数的结果将有来自您发送请求的服务器的答案

于 2013-10-10T08:31:28.817 回答