2013-08-02 5 views
1

Heroku에서 Neo4j 설치를 쿼리하기 위해 (Heroku에서 실행되지 않는) 웹 응용 프로그램에서 Ajax 호출을 사용하려고합니다. http://login:[email protected]:7322/db/dataHeroku에서 Neo4j REST URL에 액세스 할 수 없습니다.

에서 Heroku가 서버 URL에 접속을 할 때 나는 내 말은 "실패"말할 때 http://localhost:7474/db/data 에서 내 로컬 호스트 서버 URL에 연결하지만 실패했을 경우에 아약스는 완벽하게 작동합니다 (오류는 예상 JSON 응답) 나는 오류를받을 수 없습니다 또는 결과 (Firebug 콘솔에서 모니터링). 그러나 다음과 같이 Heoku에서 Neo4j 웹 관리자 콘솔 (Chrome 또는 Firefox를 사용하지만 IE는 사용하지 않음)에 액세스 할 수 있습니다. http://login:[email protected]:7322/webadmin/

Ajax 코드는 다음과 같습니다.

누구나 내가 잘못하고있는 것과 헤로 쿠에 연결하는 방법을 제안 할 수 있습니까?

restServerURL = "http://login:[email protected]:7322/db/data"; 

$.ajax({ 
    type:"POST", 
    url: restServerURL + "/cypher", 
    crossDomain: true, //recommended by Neo4j (no effect) 
    dataType: "json", 
    data: { 
    query:"START n = node(*) WHERE n.name =~ '(?i)" + request.term + ".*' RETURN n, n.name ORDER BY LOWER(n.name) ASC LIMIT 12", //"like" (=~) search term, case insensitive ((?i)), show first 12 results 
     }, 
    success: function(data) { 
     //process json here  
     }; 
    } 
}); 

감사합니다,

제프

+2

귀하의 쿼리는 글로벌 그래프 검사 한, 꽤/느린 비싼 것입니다 대신 –

답변

0

시도 사용하기 :

xhrFields: { 
     withCredentials: true 
    }, 
+0

를 인덱스 조회를 사용해야합니다 지도 해줘서 고마워. 목록에서 내 쿼리를 인덱스 조회로 변환하면됩니다. xhrFields 매개 변수를 사용해 볼 수 있습니다. 그러나 Neo4j 2.0 출시가 가까워지면서 Heroku 호스트 버전은 2 버전 뒤가됩니다. 이를 위해 Amazon AWS 64 비트 AMI Linux 인스턴스를 설치하고 Neo4j V1.9.2 Community Edition을 성공적으로 설치하고 웹 응용 프로그램을 여기에 연결했습니다. 이것은 내가 루트 액세스를 가지고 주어진 Heroku보다 훨씬 더 유연한 솔루션을 나타납니다. 최신 Neo4j 버전, 개발자 도구 등을 설치할 수 있습니다. 누구든지이 작업을 수행하는 방법을 알고 싶다면 알려주십시오. – JeffA

+0

XhrFields 시도 - 차이가 없습니다. 이 시점에서 나는 더 이상 Heroku를 보지 않습니다. 색인 조회를 사용합니다. 당신의 도움을 주셔서 감사합니다. – JeffA

관련 문제