2017-05-26 131 views
2

我不时从API获取neo4j响应。库(使用libcurl)报告连接错误。 Neo4j(3.1.0)在本地主机上运行,​​因此不涉及网络问题。网站控制台始终处于响应状态。curl无法连接到neo4j - curl:(7)无法连接到服务器

我可以用简单的bash命令重现该问题:

$ while true; do curl -X POST http://localhost:7474/db/data/; done 

多数时候我得到预期的时间:

{ 
    "errors" : [ { 
    "code" : "Neo.ClientError.Security.Unauthorized", 
    "message" : "No authentication header supplied." 
    } 

但不时:

curl: (7) Couldn't connect to server 

是我的neo4j没有正确处理太多请求?我不知道如何调整它,或者如果我错过配置中的任何东西。我使用默认的一个。

回答

0

好吧,我无法解释为什么它的工作原理(大部分时间),但错误消息说认证标题。 也就是说,查询的HTTP标头应该包含服务器在回复登录事件时返回的标记。

所以基本上,一个-H参数是需要您的通话卷曲

尝试从Web控制台注销,看看是否所有的卷曲调用失败。 恕我直言,这是由neo团队自动处理的,但是当令牌到期时,您会在自动重新运行之前得到错误。

尝试从另一台机器卷曲,没有打开webconsole(也许缓存清理)。

+1

不幸的是,这不是这种情况。当我这样做时:$ curl -X post'http:// localhost:7474/db/data /'--user'user:password'有时会返回curl:(7)无法连接到服务器。 – Spec

+0

不知道 - 用户是正确的,恕我直言将是-H键:值 看与铬devtools(F12)和'网络'选项卡,这将显示您的请求和答复的细节。 但是,请尝试:在浏览器中连接服务器。 但清除缓存只是为了确保。 –