2009-10-11 39 views
1

我在遠程服務器上有一個solr索引,需要創建一個搜索頁面接口。我使用GWT編碼頁面和XML-HTTP來查詢索引並接收響應。問題是同一網站來源安全政策。它不會讓JavaScript檢索遠程XML數據。有沒有解決方法,最好不使用JSON。到Solr索引的GWT接口

回答

2

類似的問題:Make GWT interact with ASP.NET Web Service

這些問題的答案應該也適用於此。

根據數據要發送(即他們如何「公開」是)的類型,JSONP可能不是最好的選擇 - 它不是最安全的運輸方式(純JSON是更安全,但爲了克服SOP,你需要填充)。

如果你有..服務器端的Java服務器,我會去GWT <-> servlet (acting as proxy, on the same domain as your main app) <-> web service (any domain) - 最安全和最乾淨的代碼,afaict。

+0

是的,該鏈接總結得很好。名稱技巧很有趣,應該適用於多種瀏覽器類型。代理是最簡單的解決方案。 – 2009-10-12 07:47:51

+0

'window.name' hack也比'JSONP'更安全 - 我知道的唯一冒犯之處就是即使用戶離開網站,window.name的值仍然存在(這就是爲什麼這個黑客可以工作,但是這也意味着sitexxx.com可能會嘗試讀取window.name來搜索機密/任何數據)。然而,使用來自Ray Cromwell的那個自定義的'FormPanel'修復了 - FormPanel使用了一個動態創建的iframe,所以在使用之後它被丟棄,因此沒有人可以讀取該iframe的'window.name'的值。 – 2009-10-12 15:43:21

+0

感謝igro。我在服務器上實現了一個java servlet,因爲我已經運行了tomcat。 – Chintan 2009-10-12 20:28:53