【问题标题】:Cross Domain Ajax, same server but different port?跨域 Ajax,相同的服务器但不同的端口?
【发布时间】:2013-02-13 17:22:51
【问题描述】:

我是 AJAX 新手,正在努力学习。我已经设置了一个在端口 8983 上运行的 Java servlet,它在查询时从数据库返回 XML 搜索结果。我还在端口 80 上运行 wamp 服务器,并试图让这些搜索结果显示在页面上。我假设我遇到了这个跨域 ajax 调用问题,即使它是同一个主机,因为我在 2 个单独的端口上运行这些服务?

我听说解决方案是使用 jsonp 将 servlet 的响应包装在一个函数中。问题是,我不认为我能做到这一点,因为这个 servlet 是 Apache Solr,我刚刚对其进行了配置,并且开箱即用。

有什么建议吗?

【问题讨论】:

    标签: php javascript ajax solr cross-domain


    【解决方案1】:

    你可以让SOLR接受JSONP请求,根据http://xplus3.net/2010/09/21/solr-and-jsonp/

    【讨论】:

    • 您还需要指示 Solr 以 JSON 格式返回响应,因为默认是 XML,但这可以使用简单的查询字符串参数 wt=json 来完成,它支持开箱即用,所以您应该没有任何问题。请参阅此示例 - skipperkongen.dk/2011/01/11/solr-with-jsonp-with-jquery
    • 感谢您提供额外信息 :)
    • 感谢您的链接。我现在可以从我的 solr 服务器中检索 Jsonp。我只需要学习如何处理它(我只学过 javascript,但所有示例都在 jquery 中)。
    猜你喜欢
    • 2012-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多