我正在开发一个网站,本质上需要大量的动态数据。我的服务器上无法承受如此庞大的数据,但有很多网站使用它。让我用一个例子来澄清。
假设网站 hotel.com 拥有所有酒店的列表。它允许用户使用ajax查询来搜索酒店。一旦用户输入一个字母,它就会显示可能带有该字母的酒店名称,用户可以从中进行选择。
我正在设计一个需要酒店名称的网站,但我没有全部名称,而且很多名称还在不断添加。
那么我如何设计一个页面,以便当我在网站中输入字母时,我可以在下拉菜单中获得 hotel.com 的所有相关结果?
编辑 1
<小时/>根据回复,这里有更多规范。基于 microspino relpy,我认为如果我定期废弃数据,我可以管理空间。我不会一次性需要所有数据。所以你可以忘记空间的限制。我所需要的只是我无法直接获得的数据。
编辑2
<小时/>基于解决方案,我想到了一个可能的解决方法,我可以让用户手动输入酒店名称,并且我可以根据 hotel.com 网站上的数据在后端交叉检查其有效性。我应该在后端使用它什么,即从网站获取结果并进行比较?
最佳答案
Ajax 请求通常不能跨域工作。但也有一些异常(exception),IE 允许您 POST 数据但不查看响应,如果双方都愿意参与,则可以按照前面提到的方式设置 JSONP。
然而,说“这是不可能的”并不完全是100%正确的。您无法单独使用 JavaScript 来完成此操作,但您可以在本地设置代理来为您完成此操作。任何服务器端编程语言都可以处理从另一个网站抓取信息。过去,我设置了一个本地 JSP 代理来提取数据,然后将我的 ajax 调用指向本地 JSP 而不是远程站点。
在这里查看我的答案:stackoverflow answer for cross domain ajax calls其中有另一个链接到我发布的示例。 Java/JSP Proxy example
设置 JSP、ASP、PHP 等...代理是您最好的选择,它将为您提供您想要的东西。
关于jquery - 如何使用 ajax(或简单的,以防 ajax 不可能)从网站到我的网站的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8419908/