ホームページ > ウェブフロントエンド > jsチュートリアル > HTTP ステータス - Rest API のメソッドが許可されていないエラー -> 解決策

HTTP ステータス - Rest API のメソッドが許可されていないエラー -> 解決策

Linda Hamilton
リリース: 2024-12-06 11:52:14
オリジナル
444 人が閲覧しました

HTTP Status  - Method Not Allowed Error for Rest API -> ソリューション ソリューション" />

開発者の皆様、おはようございます☕️?‍?。私も元気なので、あなたも元気でいることを願っています。今日、私は405メソッドは許可されていませんを受けている何人かの人々を助けに行くことにしました。 REST API を作成している場合でも、URL をリクエストしている場合でも、405 エラーが発生します。この記事では、その内容について説明します。

URL をリクエストしようとしましたが、上記のエラーが発生しました
私がリクエストしていたURLはこちらです

http://localhost:8080/users/services/start/import

@Path("/start")

public class StartService {
@GET
@Path("/import")
@Produces({"text/plain","application/xml","application/json"})
public String getVersion() {
    String ver="";

    try{


          Runtime rt = Runtime.getRuntime();
          Process pr = rt.exec("C:\server\dgr -v" );

          BufferedReader stdInput = new BufferedReader(new InputStreamReader
(pr.getInputStream()));
          BufferedReader input = new BufferedReader(stdInput);
         // String ver ="";
          StringBuffer verOutput = new StringBuffer();
                while((ver =  input.readLine()) != null){
                    verOutput.append(ver + "\n");
                    System.out.println(ver);
                }


        }catch (Throwable t)  
          {  
            t.printStackTrace();  
          }  


        finally {  

        }
    return ver;  }

}
ログイン後にコピー

エラーの原因と解決策を調査したところ、POST リクエストまたは VSV のみが許可されているものに対して Get リクエストを試行すると、405 エラーが発生する可能性があることがわかりました。
次に、https

を必要とするメソッドで http: を試した可能性があります。

エラーの原因はコンテンツ タイプの問題であることがわかりました
これを変更しました @Produces({"text/plain","application/xml","application/json"})
こちらへ

@Produces("text/plain") 広告は完璧に機能しました。

これは、API に送信されるヘッダー/コンテンツ タイプが、API が期待するものと一致する必要があり、一致しない場合は HTTP 405 が返されるためです。

このタイプのエラーの詳細については、このリンクにアクセスしてください

同じエラーが発生した場合に確認できる領域

CORS の問題:

フロントエンドとバックエンドが異なるポートで実行されている場合 (例: フロントエンドが 4200、バックエンドが 8080)、フロントエンドのオリジンからのリクエストを許可するように CORS (Cross-Origin Resource Sharing) がバックエンド サーバーで適切に構成されていることを確認してください3。

サーバー応答のデバッグ:
サーバー側にログを実装して、受信リクエストとそのメソッドをキャプチャします。これは、リクエストがサーバーに到達しているかどうか、およびリクエストがどのように処理されているかを判断するのに役立ちます。

ツールを使用したテスト:
Postman や cURL などのツールを使用して、POST リクエストをエンドポイントに手動で送信します。これは、問題が Angular アプリケーション内にあるのか、サーバー自体にあるのかを特定するのに役立ちます。

以下のコメント欄でご意見を共有してください⬇️
楽しい火曜日をお過ごしください??

以上がHTTP ステータス - Rest API のメソッドが許可されていないエラー -> 解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート