我们正在使用太阳黑子轨道连接到websolr。我正试图找到一种方法,将http头添加到传出请求中。这些样本只存在于rsolr,而不存在于太阳黑子轨道。(https://github.com/onemorecloud/websolr-demo-advanced-auth)。
其目的是使用标头进行身份验证。有没有一种方法可以为索引和查询调用添加/修改来自sportsrails的http头?
我想我找到了答案:https://groups.google.com/forum/#!searchin/ruby sportp/authentication/ruby-sport/-FtTQdg4czs/mvOuB7g8yCgJ
outoftime引用的例子是检索http对象的解决方案。
class SolrConnectionFactoryWithTimeout
def initialize(timeout = 60)
@timeout = timeout
end
def connect(opts = {})
client = RSolr.connect(opts)
solr_connection = client.connection
http = solr_connection.connection
http.read_timeout = @timeout
client
end
end
Sunspot::Session.connection_class =
SolrConnectionFactoryWithTimeout.new(timeout.to_f)
然后与结合使用http://ruby-doc.org/stdlib-2.0/libdoc/net/http/rdoc/Net/HTTP.html#label-设置+标题
req = Net::HTTP::Get.new(uri)
req['If-Modified-Since'] = file.mtime.rfc2822