在 C# 中,它相当简单,只需几分钟就可以谷歌:
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(@"http://www.example.com?q=someValue");
request.Headers.Add("Authorization: OAuth realm=\"example.com\" oauth_consumer_key=\"BCqrstoO\" ... so on and so forth");
string resultString = "";
using (StreamReader read = new StreamReader(request.GetResponse().GetResponseStream(), true))
{
resultString = read.ReadToEnd();
}
尝试在 Ruby 中做到这一点并不那么简单(或者只是我错过了一些愚蠢的事情)。我一直在寻找,我找到答案的最接近的事情是如何使用修改后的标头制作 HTTP GET?并在 Ruby 中发送自定义标头。
所以我的问题,我想,归结为
- 如何将标题设置为只是一个简单的字符串?
- 为什么这两个示例显示的标题按原样格式化?
- 我要求的是什至好的约定吗?如果不是,我该如何格式化我在这些 Ruby 方法所要求的约定中尝试做的事情?
到目前为止,我尝试了这两个示例,这是我最近的非工作尝试:
headers = "Authorization: OAuth realm=\"example.com\" oauth_consumer_key=\"BCqrstoO\" ... so on and so forth"
uri = URI("www.example.com")
http = Net::HTTP.new(uri.host, uri.port)
http.get(uri.path, headers) do |chunk|
puts chunk
end