APIを使用してBoxへのアップロードを実行しようとすると、405「Method Not Allowed (許可されていないメソッド)」というステータスコードが返され、アップロードが失敗します。
環境
APIコールを発行してBoxにファイルをアップロードするすべてのアプリケーション。 APIコールのフォーマットに問題があることが根本的な原因です。この問題は、Boxの公式SDKを使用せずに独自開発されたAPIコールで最も多く発生します。
解決手順
アプリケーションから送信されるAPIコールを調べて、ファイルアップロードAPIコールで指定されているパラメータ (特にcontent-type) とそのアプリケーションのAPIコールが一致しているかどうかを確認します。
これを行うには、以下のような方法があります。
- 独自のアプリケーションを使用して送信APIコールを調べる (Fiddlerなど)
- Postmanを使用して、問題がないことがわかっているパラメータを指定した適切なAPIコールをBoxに送信します。 次に、リクエストをそのまま返すオンラインサービスなど (requestb.inなど) にエンドポイントを変更します。
- サービスから送り返される問題のないリクエストと、問題のあるコードから送信されるリクエストを比較します。
- 問題のないリクエストと一致するように、相違点を修正します。
根本原因
このエラーの原因として最も多いのは、ファイルアップロードAPIコールで指定されている形式/値 ( https://ja.developer.box.com/reference) とcontent-typeが一致していないことです。ただし、それ以外の不一致も考えられ、その場合もこのエラーメッセージが返されることがあります。
platform_swarm_kb