我想升级 Magento Ogone 模块以匹配新的 SHASign 计算。现在工作正常,但有一个问题......
我对 Magento 方法返回的一些字符串有疑问: Mage::getUrl('ogone/api/accept');
它返回一个字符串,其中包含一些不会在屏幕上打印的字符。我不知道为什么。
字符串(89)“ACCEPTURL=http://www.xxxxxxx.be/store/fr_be/ogone/api/accept/KKKKKKKKKKKKKKKKKKK”
KKKK = 来自 ogone 的密码
如果您检查长度不是 89 而是 80。有一些隐藏的汽车,如果我执行 for 循环并逐个回显字符,我可以看到它们。
未显示的字符是: ?___SID=U 我在 Magento 中签入,并且 URL 中的会话 id 参数已被禁用。
在模块中,我需要获取发送到 Ogone 的所有表单字段并创建一个 SHA-1 字符串,以确保数据完整性与仅对我和 Ogone 可用的字符串。有了这个问题,我这边构建的 SHA-1 字符串与 Ogone 不同,因为表单中的 URL 显示时没有 ?___SID=U :告诉你它不会被打印!
所以首先我不知道为什么当我在配置中要求 Magento 不包含它时,为什么要包含它。其次,为什么我看不到 var_dump() 或任何 echo 上的字符?
我该如何调试这种情况?我想那里有一些功能可以帮助我。
我用另一个函数修复了这个问题来构建 URL,这样我的 SHA-1 字符串就可以知道并且模块看起来工作正常。我的关注点更集中在 strlen 函数和散列函数看到的那些隐藏字符,而不是 echo 或任何其他打印函数。
感谢您的帮助,请原谅我的英语不好,而不是我的母语。