javascript - 跨域 AJAX 得到响应,但在错误消息中
问题描述
我需要为服务器发出跨域 ajax 请求,?t=bla
如果成功则得到以下响应:
{"success":"yeeee","blaOne":"blabla","blaTwo":"blablabla"}
错误也是如此,只是代替yeeee
, 它是boooo
.
如果是则成功,如果是则?t=bla
失败?t=hm
我做了这样的事情:
$.ajax({
method: "GET",
url: "http://...",
crossDomain: true,
data: {t:'bla'},
dataType: "jsonp"
}).then(function(response){
console.log(JSON.stringify(response));
}).catch(function(error){
console.log(JSON.stringify(error));
})
结果,我得到了Uncaught SyntaxError: Unexpected token :
,但我能够在浏览器的资源文件中看到带有yeeee
消息的响应!它是其中之一.catch(function(error)
。如果我更改data: {t:'hm'}
- 我会收到适当的(boooo
)消息,但同样,它是 .catch(function(error)
.
任何想法为什么会发生这种情况以及我能做些什么?
我无权访问服务器。
如果没有办法处理这个问题并且这是服务器的问题,在这种情况下我如何访问结果消息(我可以吗?)
更新:
我在请求的资源上出现 No 'Access-Control-Allow-Origin' 标头是我使用 JSON 而不是 JSONP ...我得到的状态是 200
解决方案
推荐阅读
- python - 在 RandomForestRegressor sklearn 中绘制特征重要性
- php - 向 AJAX 请求添加第二个下拉列表以进行数据过滤
- amazon-ec2 - 完整获取后 pm2 部署失败
- android - 错误 CS0115 '...OnBindViewHolder(Object, int)': 找不到合适的方法来覆盖
- python - 我正在尝试加载 txt 文件,但出现以下错误:内存不足
- bash - 如何将提交推送到现有仓库
- python - 创建一个 xarray.DataArray ,其中所有值都满足一个条件
- angular - 如何在 Angular Material 表中显示来自 API 的数据?
- python - 结合 Python3 生成器和实例化的函数
- javascript - 更新图像旋转器 .xml 配置文件而不刷新