2

私は通常、Web開発者ではありませんが、友人からの弟の中小企業向けWebサイトの開発の提案を受け入れるのに十分なほど、まともなコーダーです。私はほぼ完成し、CodeIgniterを使用しています。これは非常に役立ち、簡単に利用できます。

彼らはサイトから購入したい製品をいくつか持っており、彼らの好みはAuth.net(私はこれまで経験したことがない)であり、ホストはSSL(nearlyfreespeech.net)をサポートしていないので、私はそれを決めましたAuth.netのSIMは適切でした。利用可能なトランザクションの詳細を単に吐き出すリレー応答ページを使用してCIアプリケーションの外部でSIMをテストすると、すべてが期待どおりに進みます。文字列をエコーするだけのCIコントローラー/メソッドに設定されたリレー応答ページで試してみると、Auth.netは次の「エラー」を表示します。

この取引を販売者に報告しようとしたときにエラーが発生しました。エラーを通知する電子メールが販売者に送信されました。以下は、クレジットカードへの請求を試みた結果です。

この取引は承認されました。

商品またはサービスを受け取ることを確認するために、販売者に連絡することをお勧めします。

私が最初に考えたのは、index.phpフロントコントローラーを含める必要がないように設定した書き換えルールが問題だったので、変更せずにリレー応答URLに含めてみました。また、問題のコントローラーは_remap()メソッドを実装していますが、リレー応答メソッドは正規表現と一致しないため、影響を受けないようにする必要があります。

任意の洞察をいただければ幸いです。

4

1 に答える 1

3

このエラーは、指定した時間内にスクリプトが応答しない場合に発生します。また、200 成功メッセージ以外が返された場合にも表示されます。したがって、基本的にリレー応答 URL にエラーがあります。

最初にページを直接プルアップして、これが機能し、適切なヘッダー応答が返されるかどうかを確認する必要があります。次に、シミュレートされた POST 応答を送信してテストし、適切に応答するかどうかを確認できます。それらが機能する場合は、スクリプトの応答に時間がかかりすぎていないことを確認してください。その場合、遅いページを最適化して適切な量の応答を返す方法がおそらくあります。

于 2011-04-13T14:57:23.620 に答える