我不明白谷歌如何实现以下单点登录机制:
第二个站点如何检测到我已经登录.它们是不同的域.Youtube无法读取Gmail的Cookie.
我读过的关于单点登录的所有解决方案都不允许这样做.客户端始终要求获得中央登录应用程序的权限.在我的示例中,YouTube不知道我是登录Gmail的用户(实际上它确实知道,但我不明白如何)
请注意,我手动输入"youtube"的网址.我没有从gmail的上方工具栏中取出youtube图标(在这种情况下,gmail可能会通过网址传递一些auth params).
我有一个服务器并为它创建一个Web界面,如果用户按下页面上的重启按钮,则用户被重定向到reboot.php他应该看到一个spinner gif,直到服务器再次可以访问并且服务器重新启动通过shell执行.如果服务器可以访问,那么我需要重定向到main.php
所以我创建了以下功能.该函数以超时5秒开始,因为否则会立即加载,main.php因为reboot命令需要时间.
reboot.php
$ret = false;
test();
function test()
{
setTimeout
(
function()
{
$ret = ping("www.google.de");
if ($ret === false)
{
test();
}
else
{
window.location.href = "main.php";
}
},
3000
);
}
function ping(url)
{
$.ajax
(
{
url: url,
success: function(result)
{
alert('reply');
return true;
},
error: function(result)
{
alert('timeout/error');
return false;
}
}
);
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="col-lg-6 col-lg-offset-3" id="mydiv">
<div class="mydiv_inhalt">
<h2>Rebooting...</h2>
<p>This can take about 2 minutes.</p> …Run Code Online (Sandbox Code Playgroud)