验证请求是否为GET / POST

时间:2014-07-10 01:01:28

标签: ruby-on-rails ruby twitter twitter-gem

我正在使用twitter gem for ruby​​,需要向用户/查找端点发送POST请求。 根据gem源代码文档(https://github.com/sferik/twitter/blob/4e8c6dce258073c4ba64f7abdcf604570043af71/lib/twitter/rest/users.rb),默认情况下请求应该是POST,除非我通过:get:

  

@option options [Symbol,String]:method如果设置为':get',则通过GET请求而不是标准POST请求请求用户。

def users(*args)
    arguments = Twitter::Arguments.new(args)
    request_method = arguments.options.delete(:method) || :post
    flat_pmap(arguments.each_slice(MAX_USERS_PER_REQUEST)) do |users|
      perform_with_objects(request_method, '/1.1/users/lookup.json', merge_users(arguments.options, users), Twitter::User)
    end
  end

我称之为:

users = @client.users(twitter_screen_names_arr, [:method, :post])

但是,我不确定这是否实际导致POST请求/ GET请求。 如何确定这是POST / GET?我想打印正在进行的请求,以明确实际发送的内容。

谢谢!

1 个答案:

答案 0 :(得分:1)

正如您在code中看到的那样,它默认使用POST。对于RSpec,此行为也是specified

您可以像这样调用users方法:

@client.users(twitter_screen_names_arr, :method => :post)

或只是

@client.users(twitter_screen_names_arr)

因为POST是默认的请求方法。

如果您不信任代码或规范,则可以通过代理运行请求以手动验证此行为。

相关问题