我有一个POST
Ajax请求,它在我的Web服务器后端(Grails 2.2.0
)上调用一个函数。 Web服务器返回一个JSON
对象,其中包含指向另一个Web页面的URL。在成功回调Ajax请求时,我尝试将用户重定向到另一个页面,如下所示:
$.ajax({
type: 'POST',
url: 'external/location',
data: {account: 'myAccount'},
success: function(data) {
if(typeof data.redirect !== 'undefined') {
var win = window.open(data.redirect, '_blank'); // <-- here I open another window/tab
win.focus();
}
}
});
这显然有效,但是我在Chrome
网络浏览器的开发者控制台中收到以下错误消息:
Blocked a frame with origin "http://the.redirected.page" from accessing a frame with origin "http://my.page". Protocols, domains, and ports must match.
我认为JSONP
不是解决问题的正确武器,因为我没有查询外部服务器,但是我正在重定向到Ajax中的另一台服务器{ {1}}回调?
注意:我不使用普通的Javascript,而是使用success:
和Ember.JS 1.0.0-rc3
。