簡體   English   中英

檢查用戶是否從其他域登錄

[英]Check if user is logged in from different domain

多虧了stackoverflow,我的小項目才能進行了,但是我再次需要一些建議。 我想檢查用戶是否登錄domain1.com並在domain2上返回一條消息。 代碼還有很多。 下面我提供了一個基本示例。

http://domain2.com上的 index.php

<script type="text/javascript" src="http://domain1.com/test.php?js"></script>

test.php在http://domain1.com上

<?php
if (isset($_GET['js'])){
header("Content-type:text/javascript");
?>

function doAjax(){
$.getJSON("http://domain1.com/index.php/home/callback.php?name=name&callback=?",
function(message) {
alert("Data Saved");
});
}

document.write('<button onclick="doAjax();">Submit</button>');
<?php } ?>

<?php exit; } ?>

callback.php在http://domain1.com上 這是我想檢查用戶是否登錄的地方。 如果用戶已登錄,則文件將被寫入,否則,我想向domain2.com發送消息以請求登錄。

<?php
$callback = $_GET['callback'];

$name = $_GET['name'];

$myFile = "txt/tester.txt";
$fh = fopen($myFile, 'a') or die("can't open file");
fwrite($fh, $name);
fclose($fh);

header("Content-Type: application/javascript");
?>

<?php echo $callback; ?>("Message from the server");

這是我上一個問題得到的最后一部分。 <?php echo $callback; ?>("Message from the server"); 如果這是發給domain2的消息,我怎么稱呼它?

因此,基本上,域2期望域1上的callback.php提供JSONP對象。要以JSON對象格式格式化消息,請將消息封裝在關聯數組中(例如: $msg = array('message' => 'This is the callback message'); echo $_GET['callback'].'('.json_encode($msg).')';然后通過echo $_GET['callback'].'('.json_encode($msg).')';將其傳遞回域2,同時,在header()設置Content-Type header()聲明到application/json

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM