跨原点窗口控制
Cross Origin window control
我正试图通过我的web应用程序建立一个Google Plus登录,就像你可以通过一个oauth弹出窗口在foursquare.com上看到的那样。应用程序在控制台中显示以下错误。
Uncaught SecurityError:阻止了一个源为http://airus.com:3000的帧访问一个源为https://accounts.google.com的帧。请求访问的帧具有"http"协议,被访问的帧具有"https"协议。协议必须匹配。
<script type="text/javascript">
var REDIRECT = 'http://airus.com/users/auth/google_oauth2/callback';
function login(url, x) {
var win = window.open(url, "windowname1", 'width=400, height=600');
var pollTimer = window.setInterval(function() {
console.log(win.document.URL);
if (win.document.URL.indexOf(REDIRECT) != -1) {
window.clearInterval(pollTimer);
var url = win.document.URL;
win.close();
x.reload();
}
}, 500);
}
$("#link").click(function(){
x = location;
login($(this).attr('href'), x);
return false;
})
</script>
你知道怎么解决吗?
错误信息实际上是正确的:
请求访问的帧协议为"http",被访问的帧协议为"https"。协议必须匹配。
所以你必须通过https (SSL,端口443)来服务你的站点。这样页面的url就变成https://airus.com (:443)
相关文章:
- 如何在主页的弹出窗口中从向导中的用户控制中获取ControlToValidate ID-javascript asp.n
- 控制窗口.obeforeunload事件
- 在多个子弹出窗口之间切换控制
- 使用 Websocket 控制浏览器窗口
- 在链接后控制父窗口(JavaScript)
- 如何控制 CKEditor API 在哪里打开文件浏览器浏览网址的新窗口
- 通过鼠标控制窗口移动
- 使用setTimeout控制弹出窗口
- 你能控制用Javascript创建的窗口显示在哪个显示器上吗
- 通过javascript控制自定义对话框窗口的字段
- 有没有可能用超链接打开窗口控制面板
- 当控制第二个窗口中的内容时,单个按键触发两次
- Webbrowser控制如何改变一个窗口的javascript属性
- 窗口.在Firefox中打开在单击事件处理程序中失去控制
- 如何控制弹出窗口的大小
- 打开“控制ShareThis javascript”窗口
- 跨原点窗口控制
- 如何将驱动程序控制从顶部窗口切换到iframe#mainFrame
- 为什么我的代码在控制台中运行时从浏览器窗口弹出
- CGI程序可以返回控制弹出窗口,而不是父屏幕