Rumah  >  Artikel  >  Bagaimana untuk mengalih keluar ralat "Permintaan kaedah 'GET' tidak disokong" dari skrin dalam java

Bagaimana untuk mengalih keluar ralat "Permintaan kaedah 'GET' tidak disokong" dari skrin dalam java

WBOY
WBOYke hadapan
2024-02-11 10:48:08755semak imbas

editor php Banana akan memperkenalkan anda cara menyelesaikan ralat "Kaedah permintaan 'GET' tidak disokong" yang muncul di Jawa. Ralat ini berlaku apabila kami menggunakan kaedah permintaan yang tidak disokong semasa pembangunan. Terdapat dua cara untuk menyelesaikan masalah ini, satu adalah dengan menukar kaedah permintaan untuk memadankan kaedah yang disokong, satu lagi adalah dengan mengkonfigurasi fail web.xml untuk menambah kaedah yang disokong. Tidak kira kaedah yang digunakan, ia boleh membantu anda menyelesaikan masalah ini dengan mudah dan menjadikan aplikasi Java anda lebih stabil dan boleh dipercayai. Seterusnya, kami akan memperkenalkan langkah khusus kedua-dua kaedah ini secara terperinci.

Kandungan soalan

Apabila saya mengakses url api dalam penyemak imbas, ralat ini muncul pada skrin:

Kaedah permintaan "dapat" tidak disokong

Apa yang saya mahu ialah menghapuskan sepenuhnya ralat ini apabila saya melawati url terus dalam penyemak imbas. Saya cuba mencipta logik pengendali pengecualian untuk menangkap ralat dan memaparkan teks kosong tetapi ia tidak berfungsi

Ini kod saya:

import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.HttpRequestMethodNotSupportedException;

@controllerAdvice
public class GlobalExceptionHandler{
    @ExceptionHandler(HttpRequestMethodNotSupportedException.class)
    public ResponseEntity<String> handleMethodNotAllowedExceptionException(HttpRequestMethodNotSupportedException ex){
   
      return new ResponseEntity<>("",HttpStatus.METHOD_NOT_ALLOWED);

   }
}

Adakah terdapat cara untuk mengalih keluar ralat ini daripada skrin? Sebarang bantuan amatlah dihargai.

Penyelesaian

Dalam but musim bunga 3.2, kod ini berfungsi dengan sempurna:

import org.springframework.http.httpstatus;
import org.springframework.http.responseentity;
import org.springframework.web.bind.annotation.controlleradvice;
import org.springframework.web.bind.annotation.exceptionhandler;
import org.springframework.web.httprequestmethodnotsupportedexception;

@controlleradvice
public class globalexceptionhandler {
    @exceptionhandler(httprequestmethodnotsupportedexception.class)
    public responseentity<string> exceptionhandler(httprequestmethodnotsupportedexception ex) {
        return new responseentity<>("", httpstatus.method_not_allowed);
    }
}

Jika projek anda tidak mempunyai pilihan globalexceptionhandler,则意味着存在发现问题,或者您有另一个 exceptionhandler kacang untuk mengatasi pengendali ini dalam beberapa cara. Pastikan anda mengemas kini projek anda kepada versi terkini dan mengemas kini kelas globalexceptionhandler dalam pakej boleh ditemui musim bunga.

Sebagai contoh, jika aplikasi ditakrifkan seperti berikut:

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }

}

Pastikan untuk meletakkan kelas globalexceptionhandler 类放入 com.example.demo ke dalam pakej com.example.demo atau subpakejnya.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar ralat "Permintaan kaedah 'GET' tidak disokong" dari skrin dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam