我需要为服务器创建一个带有?t=bla
的跨域ajax请求,并在成功时获得以下响应:
{"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