Web サーバーが IPN ハンドラー URL で POST 要求を許可していることを確認します。この例では、リンクしたページの例の PHP バージョンを使用し、スクリプトを に配置しました/ipn.php
。
次に、自分のサーバーに telnet で接続します。(あなたのサーバーアドレスに置き換えてください)
$ telnet myserver.com 80
Trying myserver.com...
Connected to myserver.com.
Escape character is '^]'.
以下を telnet セッションに貼り付けます。(ipn.php と myserver.com を置き換えます)。最後のコマンドの後に空白行を追加します。
POST /ipn.php HTTP/1.1
Host: myserver.com
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
HTTP/1.1 200 OK
200 ステータスが表示されない場合は、アプリケーションが POST 要求を適切に処理していないことを意味し、これが 405 エラーの原因である可能性があります。
サーブレットに doPost() メソッドと doGet() を必ず実装する必要があります。
IPN シミュレーターから機能するリクエストを取得でき、サンドボックス テストに進む準備ができている場合は、正しい通知 URL を持っていることと、サンドボックス販売者のプロファイルで IPN が有効になっていることを確認してください。
また、IPN ハンドラーが INVALID リクエストもログに記録していることを確認して、リクエストが開始されたかどうかを確認してください。
最後に、https://www.sandbox.paypal.com/cgi-bin/webscr
サーブレットで IPN 検証 URL が に設定されていることを確認します。(投稿した例のURLは ですhttps://www.paypal.com/cgi-bin/webscr
)