Magento Ogone モジュールをアップグレードして、新しい SHASign 計算に対応させたいと考えていました。現在は問題なく動作していますが、問題が発生しています...
Magento メソッドによって返されるいくつかの文字列に問題があります。 Mage::getUrl('ogone/api/accept');
画面に表示されない文字を含む文字列が返されます。どうしてか分かりません。
string(89) "ACCEPTURL=http://www.xxxxxxx.be/store/fr_be/ogone/api/accept/KKKKKKKKKKKKKKKKKKKK"
KKKK = オゴネの秘密のコード
長さが 89 ではなく 80 であることを確認すると、隠れた車がいくつかあります。for ループを実行して文字を 1 つずつエコーすると、それらを見ることができます。
表示されない文字は次のとおりです: ?___SID=U Magento にチェックインしましたが、URL のセッション ID パラメーターは既に無効になっています。
このモジュールでは、Ogone に送信されたすべてのフォーム フィールドを取得し、SHA-1 文字列を作成して、私と Ogone だけが使用できる文字列でデータの整合性を確保する必要があります。そして、その問題により、フォーム内の URL が ?___SID=U なしで表示されるため、私の側で構築された SHA-1 文字列は Ogone と同じではありません。
まず第一に、構成でMagentoに含めないように依頼したときに、Magentoがそれを含める理由がわかりません。次に、なぜ var_dump() や echo に文字が表示されないのですか?
この状況をデバッグするにはどうすればよいですか? 私を助けることができるいくつかの機能がそこにあると思います。
URL を作成する別の関数で問題にパッチを当てたので、SHA-1 文字列は問題なく認識され、モジュールは正常に動作しているように見えます。私の懸念は、strlen関数とハッシュ関数が見るがエコーやその他の印刷関数ではない隠し文字にもっと焦点を当てています。
助けてくれてありがとう。私の母国語ではなく、英語が下手ですみません。