Javascript 发送带有$.ajax类型选项的查询字符串
我的restapi开发人员告诉我,在转到实际链接之前,首先使用Javascript 发送带有$.ajax类型选项的查询字符串,javascript,jquery,ajax,Javascript,Jquery,Ajax,我的restapi开发人员告诉我,在转到实际链接之前,首先使用OPTIONStype进行ajax调用,检查文件是否可下载 如果返回OK,那么我可以继续将浏览器重定向到该页面并下载文件 return $.ajax({ type: 'OPTIONS', url: 'http://api/account-data', data: {user_id: '5'} }).done(function(data) { // redirect browser to http://api/accou
OPTIONS
type进行ajax调用,检查文件是否可下载
如果返回OK,那么我可以继续将浏览器重定向到该页面并下载文件
return $.ajax({
type: 'OPTIONS',
url: 'http://api/account-data',
data: {user_id: '5'}
}).done(function(data) {
// redirect browser to http://api/account-data?user_id=5
});
我遇到的问题是在使用选项时无法附加任何查询字符串。而且,我以前从未听说过有人使用选项。据我所知,浏览器在执行某些跨原点调用时会自动执行此操作。我告诉他这一点,但我被告知要搜索一个附加查询字符串的解决方案。有办法吗
而且,我以前从未听说过有人使用选项
人们通常对正确使用HTTP非常不满意
也就是说,我希望使用HEAD请求来确定资源是否可用
据我所知,浏览器在执行某些跨原点调用时会自动执行此操作
CORS规范要求在某些情况下将选项请求作为飞行前请求,但选项早于CORS,使用该HTTP动词还有其他原因
我被告知要搜索附加查询字符串的解决方案。有办法吗
当您发出选项请求时,jQuery将忽略数据。将查询字符串直接放在URL中
$.ajax({
type: 'OPTIONS',
url: 'http://api/account-data?user_id=5'
})
数据
字段是查询字符串,但。。。。因此,我认为您可能误用了单词查询字符串。您的示例应该生成输出URLhttp://api/account-data?user_id=5