0

我有一个Ajax 请求,它正在我的 Web 服务器后端 ( )POST上调用一个函数。Grails 2.2.0Web 服务器返回一个JSON包含指向另一个网页的 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();
    }
  }
});

这显然有效,但是我在ChromeWeb 浏览器的开发人员控制台中收到以下错误消息:

Blocked a frame with origin "http://the.redirected.page" from accessing a frame with origin "http://my.page". Protocols, domains, and ports must match.

我猜 aJSONP不是解决问题的正确武器,因为我不是在查询外部服务器,而是在 Ajaxsuccess:回调中重定向到另一台服务器?

注意:我不使用纯 Javascript,而是Ember.JS 1.0.0-rc3使用jQuery 1.9.1.

4

0 回答 0