我試圖從Apache Flex前端使用neo4j的REST API。當我的Flex應用程序連接到基本URL(http://localhost:7474/db/data/
)以發現其他服務URL時,它會以HTML格式(而不是JSON格式)回覆回覆(就像我在瀏覽器中輸入基本URL一樣)。neo4j REST API獲取HTML響應而不是JSON
在Flex HTTP請求,我給自己定了的Content-Type和接受頭既爲「application/JSON」,但它沒有作出區別。我也試過GET和POST請求方法。
我已驗證neo4j能夠通過簡單的Telnet窗口發送JSON響應,因此它必須根據HTTP請求中的內容「智能」地格式化回覆。我想內容類型和接受標題將照顧它,但。
我意識到這個問題在技術上並不在neo4j中,而是在Flex的HTTPService(和支持)類中的某個地方,但我在解決明顯的錯誤/限制方面沒有成功。
有沒有辦法簡單地強制所有這樣的響應從neo4j只是在JSON格式?
感謝,
克里斯
*編輯*
如下要求,這裏是確切的答覆我得到我的Flex應用程序:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head><title>Root</title><meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<link href='http://resthtml.neo4j.org/style/rest.css' rel='stylesheet' type='text/css'>
<script type='text/javascript' src='/webadmin/htmlbrowse.js'></script>
</head>
<body onload='javascript:neo4jHtmlBrowse.start();' id='root'>
<div id='content'><div id='header'><h1><a title='Neo4j REST interface' href='/'><span>Neo4j REST interface</span></a></h1></div>
<div id='page-body'>
<table class="root"><caption>Root</caption>
<tr class='odd'><th>relationship_index</th><td><a href="http://localhost:7474/db/data/index/relationship">http://localhost:7474/db/data/index/relationship</a></td></tr>
<tr><th>node_index</th><td><a href="http://localhost:7474/db/data/index/node">http://localhost:7474/db/data/index/node</a></td></tr>
</table>
<div class='break'> </div></div></div></body></html>
這如果我只是手動將基礎URL放入我的Web瀏覽器並以這種方式檢索,我會得到同樣的結果。
所以也許用「flex」,「http」,「json」來標記這篇文章呢?它適用於javascript和node.js,並且afaik只能查看http-headers,你確定它們到達服務器嗎?也許使用ngrep或tcpdump來檢查? – 2013-04-09 06:51:33