2016-05-09 4 views
0

私はPy2neoパッケージを使用して、サーバーマシンにあるデータベースを照会しています。py2neo - リモートサーバーからデータを取得できません

マイコードスニペット:

<Graph uri=u'http://192.168.204.146:7473/root/neo4j.graphdb/'> 
Traceback (most recent call last): 
    File "D:\Innominds\Collective[I]\Dev\Graph\Cypher_VS_Api.py", line 30, in <module> 
    dbConnect() 
    File "D:\Innominds\Collective[I]\Dev\Graph\Cypher_VS_Api.py", line 19, in dbConnect 
    cypher() 
    File "D:\Innominds\Collective[I]\Dev\Graph\Cypher_VS_Api.py", line 25, in cypher 
    result = graph.cypher.execute("MATCH (n) RETURN COUNT(n)") 
    File "C:\Python27\lib\site-packages\py2neo\core.py", line 661, in cypher 
    metadata = self.resource.metadata 
    File "C:\Python27\lib\site-packages\py2neo\core.py", line 213, in metadata 
    self.get() 
    File "C:\Python27\lib\site-packages\py2neo\core.py", line 258, in get 
    response = self.__base.get(headers=headers, redirect_limit=redirect_limit, **kwargs) 
    File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 966, in get 
    return self.__get_or_head("GET", if_modified_since, headers, redirect_limit, **kwargs) 
    File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 943, in __get_or_head 
    return rq.submit(redirect_limit=redirect_limit, **kwargs) 
    File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 433, in submit 
    http, rs = submit(self.method, uri, self.body, self.headers) 
    File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 325, in submit 
    response = send("peer closed connection") 
    File "C:\Python27\lib\site-packages\py2neo\packages\httpstream\http.py", line 318, in send 
    return http.getresponse(**getresponse_args) 
    File "C:\Python27\lib\httplib.py", line 1074, in getresponse 
    response.begin() 
    File "C:\Python27\lib\httplib.py", line 415, in begin 
    version, status, reason = self._read_status() 
    File "C:\Python27\lib\httplib.py", line 379, in _read_status 
    raise BadStatusLine(line) 
httplib.BadStatusLine: '' 

を守って、最初:マシンからデータをフェッチすることができません

from py2neo import Graph,authenticate 
import time 
from py2neo.packages.httpstream import http 
http.socket_timeout = 9999 


    def dbConnect(): 
     graph = Graph("http://192.xxx.xxx.xxx:7473/root/neo4j.graphdb") 
     print(graph) 

     #execute a cypher query 
     cypher() 

     return 

    def cypher(): 
     start_time = time.time() 
     result = graph.cypher.execute("MATCH (n) RETURN COUNT(n)") 
     print(time.time - start_time) 
     return 

    if __name__ == '__main__': 
     dbConnect() 

が、今度はエラー、

エラーメッセージを返しますエラーメッセージの行には、グラフオブジェクトをコンソールに表示しているコード内のprintステートメントだけが表示されます。そして、httpのインポートは、グーグルの知識です。

ローカルマシンからサーバーマシンのグラフデータベースにアクセスするために必要な設定と変更は何ですか?

+0

どのneo4j/py2neoバージョンをお使いですか? –

答えて

0

まず、サーバーがアクセス可能かどうか、またブラウザでWebインターフェイスを開くことができるかどうかを確認する必要があります。

標準httpsポート7473を使用してhttpに接続し、URLが正しく表示されません。

http://192.xxx.xxx.xxx:7473/root/neo4j.graphdb 

あなたは74737474からhttpまたはhttpsとの接続を試してみてください。グラフのURLはhttp://server:port/db/dataのようになります。試してください:

http://192.xxx.xxx.xxx:7474/db/data 
https://192.xxx.xxx.xxx:7473/db/data 

また、認証は使用しません。サーバーで無効にしましたか?

関連する問題