如何使用PHP或JavaScript获取并存储SAML Response为变量?
如何将SAML Response存储为PHP或JavaScript变量
JavaScript 实现
从URL参数中提取
如果SAML Response出现在URL的查询参数里(比如?SAMLResponse=xxx),可以用浏览器原生工具获取:
// 获取URL中的SAML Response参数 const urlParams = new URLSearchParams(window.location.search); const samlResponse = urlParams.get('SAMLResponse'); // SAML Response通常是Base64编码的,如需查看原始XML内容可解码 const decodedSamlContent = atob(samlResponse);
从页面隐藏表单字段提取
如果页面里有承载SAML Response的隐藏输入框(比如<input type="hidden" name="SAMLResponse" value="xxx">),直接通过DOM选择器获取:
const samlResponse = document.querySelector('input[name="SAMLResponse"]').value; const decodedSamlContent = atob(samlResponse);
PHP 实现
SAML Response一般通过POST请求提交到后端,直接从全局变量中读取即可:
// 从POST请求中获取SAML Response,空值处理避免报错 $samlResponse = $_POST['SAMLResponse'] ?? ''; // 解码Base64编码的内容,得到原始XML $decodedSamlContent = base64_decode($samlResponse);
内容的提问来源于stack exchange,提问作者Balamurugan
相关产品推荐
相关产品推荐

