使用user's cookie访问xml


Accessing xml using user's cookies

对于游戏相关的项目。

要访问游戏数据,用户必须"授权"访问。要做到这一点,他们访问网站上的一个页面,该页面在用户的PC上设置了3个cookie。

当用户查看特定的XML url时,游戏服务器检查这些cookie是否正确,并返回所需的信息。

我的问题是,我如何使用用户的cookie解析这些XML文件,为数据添加样式等?

如果我使用cURL加载url,并使用CURLOPT_COOKIE预先确定相关的cookie,它将正确返回信息。

然而,我将不知道用户的cookie,因为它们只对游戏的域有效。

我确信这是可能的,尽管可能不是通过这种方法,因为之前使用相同的数据已经完成了。

cookie集合如下:

toolbar_code = 19 digit auth code
toolbar_hash = 19 digit hashed username
toolbar_remember = true

您无法跨域读取XML(无论如何没有CORS,这还不够成熟)。

让远程脚本检查cookie并将数据返回给调用者站点的最简单方法是将<script>指向远程站点并在其中执行JavaScript,从而为调用者提供数据。通常的方法是JSONP。

客户端:

<script type="text/javascript">
    function receiveData() {
        ...do something...
    }
</script>
<script type="text/javascript" src="http://gamedataserver/getdata.php?jsonp=receiveData"></script>
服务器端:

<?php
    header('Content-Type: text/javascript');
    header('Cache-Control: no-cache');
    if (...user auth is OK...) {
        $callbackfn= preg_replace('/[^a-z_]/', '', $_GET['jsonp']);
        $json= json_encode(...game data...);
        echo "$callbackfn($json);";
    }
?>