【问题标题】:GWT interface to Solr indexSolr 索引的 GWT 接口
【发布时间】:2010-12-05 19:35:16
【问题描述】:

我在远程服务器上有一个 solr 索引,需要创建一个搜索页面界面。我正在使用 GWT 对页面进行编码,并使用 XML-HTTP 来查询索引并接收响应。问题是同站点源安全策略。它不会让 JavaScript 检索远程 XML 数据。有没有解决方法,最好不要使用 JSON。

【问题讨论】:

    标签: java gwt solr same-origin-policy


    【解决方案1】:

    类似问题: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。

    【讨论】:

    • 是的,链接总结得很好。名称技巧很有趣,应该适用于多种浏览器类型。代理是最简单的解决方案。
    • window.name hack 也比 JSONP 安全得多 - 我知道的唯一漏洞是 window.name 的值仍然存在,即使用户离开了网站(这就是为什么这个 hack有效,但这也意味着 sitexxx.com 可以尝试读取 window.name 以搜索机密/任何数据)。但是,使用来自 Ray Cromwell 的自定义 FormPanel 可以解决这个问题 - FormPanel 使用动态创建的 iframe,因此在使用后它会被丢弃,因此之后没有人可以读取该 iframe 的 window.name 的值。
    • 感谢 igro。我正在服务器上实现一个 java servlet,因为我已经运行了 tomcat。
    猜你喜欢
    • 1970-01-01
    • 2017-07-06
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    相关资源
    最近更新 更多