2012-12-03 55 views
4

我試圖通過Openfire啓用BOSH連接,以便我可以通過Web創建XMPP客戶端。 curretly我正在用strophe.js測試它。在openfire上啓用http-bind

的問題是,當我嘗試火災以下網址在瀏覽器中我得到

http://www.mydomain.com:7070/http-bind 

以下錯誤

HTTP ERROR 400 


    Problem accessing /http-bind/. Reason: 

     Bad Request 
    Powered by Jetty:// 

這裏是我的服務器設置,我看見幾個線程,但他們arent有用

enter image description here

更新

我一直在使用的strophe取得了聯繫,但我得到以下錯誤在瀏覽器恍惚

enter image description here

回答

0

你的設置是正確的。瀏覽器顯示給你的頁面也是正常的。 Openfires BOSH組件不適用於使用HTTP GET的瀏覽器,僅適用於像strophe這樣的BOSH客戶端。嘗試與strophe連接。

+0

哪個瀏覽器?確保您的瀏覽器允許跨域請求。 – Alex

+0

其鉻,谷歌瀏覽器 – Hunt

0

您應該使用代理將請求重新發布到openfire服務器。因爲,js文章不支持跨域。

說明:
1.我使用jsjac,但我認爲它並不重要。
2.如果你確定你的配置是正確的,請重新啓動你的openfire服務器。這是我的經驗。

6

它現在在我的系統中工作。

我認爲你遇到的錯誤實際上可能是openfire的配置問題。

它被設計爲在請求中沒有元素的情況下回復HTTP 400錯誤請求。您可以通過在查詢中提供一個元素來自己測試。

試試下面的URL在瀏覽器:

http://www.servername:7070/http-bind/?<body rid="1"/> 
+0

這工作對我來說,在測試,看看服務器是否工作。沒有正文元素,您將得到錯誤400。用元素返回一個BOSH對象。它也可以通過瀏覽到該鏈接來工作。 – Rarw

0

如果服務器配置正確,應該顯示

HTTP ERROR: 404 

Problem accessing /http-bind/. Reason: 

    Not Found 
Powered by Jetty:// 

壞請求不見了,當我卸載並重新安裝的Openfire在 here