麻烦一个简单的ajax GET请求

时间:2013-01-17 19:33:59

标签: javascript jquery ajax

我是Jquery和Javascript的初学者,我对HTTP协议的了解也是初学者。

我正在尝试对在本地计算机上运行的数据库执行简单的GET请求以检索word文档。

$.ajax('http:localhost:databaseURLgoeshere')

我认为这很简单,但没有发生任何事情(浏览器不下载word文档文件)。我知道我遗失了一些巨大而根本的东西。

2 个答案:

答案 0 :(得分:1)

编辑:评论提出了一个更好的观点,即这可能是一个无效的用例。

也许你打算做$ .get()而不是$ .ajax()。你还需要指明如何做到成功。 ex $ .get(“url”,function(){//在成功时执行此操作});

http://api.jquery.com/jQuery.get/

Get只是$ .ajax()

的简写

http://api.jquery.com/category/ajax/?rdfrom=http%3A%2F%2Fdocs.jquery.com%2Fmw%2Findex.php%3Ftitle%3DAjax%26redirect%3Dno

答案 1 :(得分:0)

  

我正在尝试对运行在我的数据库执行简单的GET请求   本地机器检索word文档。

这仅在数据库支持对文件的HTTP协议访问时才有效,并且您具有该文件的正确URL,您是否能够执行此操作。大多数数据库都没有这种方式的简单文件访问,但有些可能。作为测试,看看您是否可以在浏览器的URL栏中输入“http://localhost/databaseURLgoeshere”并成功下载该文件。

如果这不起作用,那么他们也可能有一个更复杂的Web服务,因为您发送参数来查询服务。如果不知道您要查询的数据库Web服务,我们无法帮助您。

  

$ AJAX(的 'http:本地主机:databaseURLgoeshere')。

在http:之后应该有一个//,你也将http:localhost:databaseURLgoes放在哪里,端口号会去。相反,它可能更像是“http://localhost/databaseURLgoeshere”或“http://localhost:1234/databaseURLgoeshere”,其中1234是服务器正在侦听的任何端口。

最后,您无法使用.ajax下载文件,请参阅此处以获取解释和解决方法: Download a file by jQuery.Ajax

ajax调用的结果会将数据返回到回调结果中,不会立即下载。通常,ajax调用的结果是json,xml或html。例如,如果它是HTML,那么您可以通过javascript将该结果插入到页面中的任何位置。我的观点是,ajax调用只是检索文件/ xml / html / data等,它实际上并没有让用户看起来。您必须编写额外的javascript才能将其放在页面上。