我读了"Bing Search API - Quick Start",但我不知道如何在Ruby中发出这个http请求(Weary)
如何翻译" Stream_context_create()"在Ruby?这是什么意思?
"Bing Search API - Quick Start"
我想使用Ruby sdk但我发现的那些已被弃用 ex(Rbing)https://github.com/mikedemers/rbing 您是否了解Bing Search API的最新Wrapper(仅限Web结果)?
答案 0 :(得分:7)
好的,经过一个小时的挫折后,我想出了办法。这段代码很糟糕,因为它是我工作的第一个版本。基本上,忽略有关base64编码的一切,因为它给了我一个错误,只支持oAuth和基本身份验证。原来微软的文档是错误的,你应该只使用你的帐户密钥作为请求中的密码而不是编码的字符串。
require 'net/http'
accountKey = 'KEY'
url = 'https://api.datamarket.azure.com/Data.ashx/Bing/SearchWeb/v1/Web?Query=%27xbox%27&$top=50&$format=json'
uri = URI(url)
req = Net::HTTP::Get.new(uri.request_uri)
req.basic_auth '', accountKey
res = Net::HTTP.start(uri.hostname, uri.port, :use_ssl => uri.scheme == 'https'){|http|
http.request(req)
}
puts res.body
答案 1 :(得分:2)
试试bing-search gem:
require 'bing-search'
BingSearch.account_key = <your key>
BingSearch.web_only = true
results = BingSearch.web('stack overflow')
答案 2 :(得分:1)
class BingSearch
def self.for(account_key, query)
puts RestClient.get("https://:#{account_key}@api.datamarket.azure.com/Bing/SearchWeb/v1/Web?Query='#{CGI::escape(query)}'&$format=json")
end
end