正在验证Py中的连接

2024-06-25 23:10:03 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我第一次使用Python和Solr。我在GCE上的tomcat中设置了Solr实例。我试图用PySolr从Python代码连接到它。但是,我不确定如何通过PySolr发送身份验证参数。在

这是我得到的例外:

   solr = pysolr.Solr('http://MY INSTANCE IP/solr/News', timeout=10)
Apache Tomcat/7.0.28-错误报告

HTTP状态401-

类型状态报告

消息

描述此请求需要HTTP身份验证()。

Apache Tomcat/7.0.28

请告知。在


Tags: 实例代码身份验证http参数状态apachesolr
2条回答
solr = pysolr.Solr('http://user:pass@IP:8983/solr/')

这就是你所需要的。。。在

您可以将Solr身份验证作为Solr连接参数的一部分传递。在

pySolr中没有关于如何执行身份验证的适当文档。由于pySolr在内部使用请求进行身份验证,所以您可以遵循authentication in requests. 下面是一个关于custom authentication as well.的小例子

在基本身份验证的情况下,可以将其用作

    solr = pysolr.Solr('http://IP:8983/solr/collection',auth=('username','password'))

或者

^{pr2}$

这是正确的身份验证方法。不建议将用户名和密码作为URL的一部分传递,因为如果在其中任何一个地方使用@或{},则可能会产生问题。Refer this GitHub issue

相关问题 更多 >