数か月前、PayPal の REST API を使用してアクセス トークンをリクエストする際に問題が発生しました。これについては、ここで詳しく説明しました: PayPal REST API: Requesting oauth token returns 500
まったく同じ問題が今も見られますが、6 か月前のように常に発生するのではなく、1 日に 1 回か 2 回しか発生しません。
次のコマンドは、30 分ごとのように実行する場合、1 日かけてエラーを再現するのに十分ではないことに注意してください: curl https://api.paypal.com/v1/oauth2/token -H "Accept: application /json" -H "Accept-Language: en_US" -u "****:****" -d "grant_type=client_credentials"
これは、PayPal サーバーが 24 時間で 48 回も動作することに頼ることさえできないとすれば、処理できる要求の数にはほど遠いものです。
これは PayPal のドキュメントからそのまま引用した例であることにも注意してください。この問題はすでに数か月間発生しており、PayPal が対応してくれることへの希望が失われているため、数回続けて再試行するなど、安全な回避策があれば教えてください。..
ありがとう〜タシロ
PS: 最後に 500 エラーが返されたとき、api.paypal.com の解決された IP は 173.0.84.66 でした。
更新- 質問にコメントの内容を追加しました:
- これは、週末だけで約30回発生しました
- 失敗したリクエストの Paypal デバッグ ID: 2e69a25b371e5、a02239857903c、11e3c2de8f785
- ペイパルサーバーも404リクエストを返し始めましたが、まれです
- トークンの取得とペイパルへのリダイレクトに成功した後、時折ペイパル デバッグ コードを確認することさえあります(注: これは本番環境であり、サンドボックスではありません)。 ::MayflyException::MayflyException(String const&) MayflyNG::Client::rpc(MayflyNG::RequestMsg&, MayflyNG::ResponseMsg&, bool, CalTransaction&) MayflyNG::Client::internal_get(MayflyNG::RequestMsg&, MayflyNG::ResponseMsg&, Buffer*, MayflyNG::Context*, bool, CalTransaction&) ...
- 2 番目または 3 番目のリクエストが 2 秒または 3 秒後に成功する場合があるため、ダミーの再試行ロジックを追加しましたが、成功率はおそらく 3 回の試行のうち 2 回です
- 現時点では、もう何をすべきかわかりません。これは何ヶ月も続いているため、最終的に修正してください