我有一个令牌问题,该令牌将完整的XML文件表示为文本。它已经使用PHP的base64_encode函数进行了编码。 xml的结构如下:
<?xml version="1.0" encoding="US-ASCII" standalone="yes"?>
<id name="Agent Smith" age="42"/>
<sso version="2.0">
<operation type="login" value="granted"></operation>
</sso>
一个外部网站将xml的表示形式通过PHP函数编码为字符串发送,正如我在上面所说的。当我执行$_POST['xml_token']
变量的var_dump时,得到以下响应:
string(220) "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVMtQVNDSUkiIHN0YW5kYWxvbmU9InllcyI/PjxpZCBuYW1lPSJHb256YWxvIiBhZ2U9IjQyIi8+PG9wZXJhdGlvbiB0eXBlPSJsb2dpbiIgdmFsdWU9ImdyYW50ZWQiPjwvb3BlcmF0aW9uPjxzc28gdmVyc2lvbj0iMi4wIj48L3Nzbz4="
所以我用以下方法解码令牌:
$xml_decoded=base64_decode($token);
而不是获取XML结构,而是得到以下结果:
string(164) ""
因此,我决定使用JavaScript atob函数测试结果,然后获得所需的XML结构。所以我对此感到困惑,我真的需要这个令牌可以用PHP而不是Javascript处理,有关正在发生的事情或我可能做错了什么的任何想法?
非常感谢。