在尝试下载文件之前,我试图找出文件是否存在。 该文件是ClickOnce应用程序。

我已经尝试了以下代码,但是这行不通(也许是因为URL在不同的服务器和域上?);

$.ajax({
    url: 'http://www.example.com/somefile.ext',
    type: 'HEAD',
    error: function()
    {
        //File does not exist
    },
    success: function()
    {
        // File exists
    }
});

有另一种解决方案,还是有办法使它起作用?

#1楼 票数:0 已采纳

是的,如果URL在其他服务器上,则此方法不起作用。 如果要执行此操作,则需要控制从中下载URL的服务器。 如果是这样,则应将Access-Control-Allow-Origin标头设置为从中加载JavaScript的服务器的名称。

有关更多详细信息,请参见Stack Overflow问题jQuery AJAX跨域

#2楼 票数:0

您不能轻松进行跨域调用(CORS) 最好在服务器上调用脚本来检查文件是否存在并返回相应的结果,从而更加安全。

#3楼 票数:0

除了其他人说的话,您还应该检查错误函数的errorThrown参数为“ Not Found”。 否则,您可能会假设在确实发生其他错误时文件不存在。

发生HTTP错误时,errorThrown会接收HTTP状态的文本部分,例如“未找到”或“内部服务器错误”。

  ask by Mystogan translate from so

未解决问题?本站智能推荐:

2回复

如何使用jquery检查浏览器中安装的add ons?

我想在Firefox浏览器中运行一次单击应用程序,客户端浏览器应该包含已安装的Microsoft .NET Framework Assistant。 在jquery中是否有任何方法可以检测是否安装了此附加组件? 如果没有安装,我需要重定向客户端以安装添加。
4回复

防止在jQuery one()函数上单击跳转

我在jQuery中使用one()函数来防止多次点击。 但是,当他们第二次单击该元素时,它会执行恼人的单击跳转并将您发送回页面顶部。 有没有办法防止这种情况发生? 在完成函数时取消绑定点击并重新绑定它具有相同的结果(我假设one()只是取消绑定事件)。 这种情况的一个简单例子: h
4回复

使用 Ajax 和 jQuery 检查文件是否存在 - 始终返回 200 响应

所以我需要在向客户端显示特定数据之前检查文件是否存在......使用 jQuery 我有这个: 当我尝试运行该函数时: (其中 example.com 是我的域),我总是收到 200 响应代码。 我想知道为什么会发生这种情况 - 难道我有一个通过 .htaccess 设置的自定义错误页面?
1回复

使用jquery ajax检查服务器上的文件夹中是否存在文件

我正在尝试使用ajax检查服务器上的文件是否存在。 我在以下脚本中使用了我的服务器名称,例如www.Mydomain.netp / Application_Folder / 如果那个时候文件存在,我也将进入错误部分,请选择其他任何替代方法。 上面的脚本非常适合localhost,但不
2回复

jQuery使用空元素检查是否存在

即使元素为空,是否可以使用length函数检查jQuery中是否存在元素? 我有一个空的div <div id="myDiv"></div> ,当用户滚动到屏幕上的某个点时,它会由AJAX填充,但是当我尝试在该点之前定位div时,我什么也没得到。 我正在使用的代码
5回复

如何使用jQuery检查ajax调用是否存在?

我知道我的头衔不是很清楚。 例如,这是我的代码的结构: 如何测试$.ajax("foo1.html")是否实际运行? 请不要告诉我再次测试foo == something 。 我的实际代码要复杂得多,所以请从ajax调用的角度回答问题。 这有可能吗?
2回复

使用远程检查电子邮件的jquery验证是否已经存在?

我正在使用jquery验证器插件来调用ajax函数我使用远程方法来检查电子邮件是否已经存在于我的数据库中但是当我使用ajax调用时我收到错误。 这是我的验证功能 这是我的路线 这是我的控制器内部 错误是
1回复

使用ajax的服务器上不存在检查文件,无法正常工作

这个问题已经在这里有了答案: 如何检查jQuery或纯JavaScript中是否存在文件? 17个答案 我试图检查服务器上是否存在文件,但是此代码始终返回该文件存在,尽管实际上文件不存在。 谁能帮助我解决我的问题?