Jadual Kandungan
Kandungan soalan
Penyelesaian
Rumah Java Ubah suai RequestBody dalam gerbang musim bunga

Ubah suai RequestBody dalam gerbang musim bunga

Feb 09, 2024 pm 07:15 PM
rangka kerja musim bunga

Editor PHP Apple memperkenalkan anda cara mengubah suai RequestBody dalam Gerbang Spring. Spring Gateway ialah gerbang API berdasarkan rangka kerja Spring, digunakan untuk memproses dan memajukan permintaan HTTP. Dalam Spring Gateway, RequestBody digunakan untuk menerima data badan permintaan yang dihantar oleh pelanggan. Jika anda perlu mengubah suai RequestBody, anda boleh melakukannya melalui penapis tersuai atau pemintas. Mula-mula, anda perlu membuat penapis tersuai atau pemintas, dan kemudian dapatkan data badan permintaan dalam penapis atau pemintas dan ubah suainya. Akhir sekali, data yang diubah suai ditetapkan semula ke badan permintaan untuk pemprosesan seterusnya. Dengan cara ini, RequestBody boleh diubah suai dalam Spring Gateway.

Kandungan soalan

Saya ingin mengubahsuai badan permintaan sebelum menghalakannya ke uri yang diberikan. Berdasarkan dokumentasi yang saya gunakan

org.springframework.cloud.gateway.filter.factory.rewrite.modifyrequestbodygatewayfilterfactory Ubah suai teks. Apabila memulakan pelayan saya, pelayan gagal bermula dengan ralat berikut Punca: Elemen [spring.cloud.gateway.routes[0].filters[0].modifyrequestbody.class] tidak terikat. nn operasi: nn kemas kini konfigurasi aplikasi n", "konteks": "nilai lalai"}

Di bawah ialah penapis sampel dan fungsi tulis semula

65bee659f312a

Berikut ialah fungsi yang ditulis semula

65bee659f313a

Berikut ialah yaml

routes:
        - id: order-route-1
          uri: http://localhost:8999/
          predicates:
            - Path=/some/path1
            - Method=POST
          filters:
            - ModifyRequestBody:
                class: com.xyz.filters.SomeFilter
                value: application/json, application/xml
                enabled: true
Salin selepas log masuk

Penyelesaian

Terdapat beberapa isu dengan kod anda:

  1. Tak perlu somefilter 类,只需直接从路由配置中使用 modifyrequestbody 即可。如果你确实需要它来实现 modifyrequestbody Yang tak boleh, kena buat kacang dengan tambah @komponen.
  2. Sintaks konfigurasi yaml anda tidak betul. Sila rujuk versi semakan di bawah:
      routes:
        - id: order-route-1
          uri: http://localhost:8999/
          predicates:
            - path=/some/path1
            - method=post
          filters:
            - name: modifyrequestbody
              args:
                inclass: com.xyz.filters.oldtype
                outclass: com.xyz.filters.newtype
                rewritefunction: com.xyz.filters.myrewritefunction
                contenttype: application/json
Salin selepas log masuk
  • inclass: Nama kelas yang layak sepenuhnya mewakili struktur badan permintaan asal.

  • outclass: Mewakili nama kelas yang layak sepenuhnya bagi struktur badan permintaan yang diubah suai.

  • rewritefunction: Merujuk kepada nama kelas yang layak sepenuhnya yang melaksanakan antara muka fungsi tulis semula, yang digunakan untuk menukar badan permintaan daripada jenis asal kepada jenis baharu.

  • contenttype (pilihan): Tentukan parameter ini apabila anda ingin menukar jenis kandungan yang diminta.

Andaikan anda ingin menukar oldtype kepada newtype, berikut ialah pelaksanaan oldtype 转换为 newtype,下面是 rewritefunction:

public class MyRewriteFunction implements RewriteFunction<OldType, NewType> {

    @Override
    public Publisher<NewType> apply(ServerWebExchange exchange, OldType originalRequest) {
     
        NewType modifiedRequest = modifyRequest(originalRequest);
        return Mono.just(modifiedRequest);
    }
}
Salin selepas log masuk

Atas ialah kandungan terperinci Ubah suai RequestBody dalam gerbang musim bunga. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Gunakan Spring Boot dan Spring AI untuk membina aplikasi kecerdasan buatan generatif Gunakan Spring Boot dan Spring AI untuk membina aplikasi kecerdasan buatan generatif Apr 28, 2024 am 11:46 AM

Sebagai peneraju industri, Spring+AI menyediakan penyelesaian terkemuka untuk pelbagai industri melalui API yang berkuasa, fleksibel dan fungsi lanjutannya. Dalam topik ini, kami akan menyelidiki contoh aplikasi Spring+AI dalam pelbagai bidang Setiap kes akan menunjukkan cara Spring+AI memenuhi keperluan khusus, mencapai matlamat dan meluaskan LESSONSLEARNED ini kepada rangkaian aplikasi yang lebih luas. Saya harap topik ini dapat memberi inspirasi kepada anda untuk memahami dan menggunakan kemungkinan Spring+AI yang tidak terhingga dengan lebih mendalam. Rangka kerja Spring mempunyai sejarah lebih daripada 20 tahun dalam bidang pembangunan perisian, dan sudah 10 tahun sejak versi Spring Boot 1.0 dikeluarkan. Sekarang, tiada siapa boleh mempertikaikan Spring itu

Ubah suai RequestBody dalam gerbang musim bunga Ubah suai RequestBody dalam gerbang musim bunga Feb 09, 2024 pm 07:15 PM

Saya ingin mengubah suai badan permintaan sebelum menghalakannya ke uri yang diberikan. Ubah suai kandungan berdasarkan dokumentasi yang saya gunakan org.springframework.cloud.gateway.filter.factory.rewrite.modifyrequestbodygatewayfilterfactory. Apabila memulakan pelayan saya, pelayan gagal bermula dengan sebab ralat berikut: Elemen [spring.cloud.gateway.routes[0].filters[0].modifyrequestbody.class] tidak terikat. \n\nOperasi:\

JAX-RS lwn. Spring MVC: Pertempuran antara gergasi RESTful JAX-RS lwn. Spring MVC: Pertempuran antara gergasi RESTful Feb 29, 2024 pm 05:16 PM

Pengenalan API RESTful telah menjadi sebahagian daripada aplikasi WEB moden. Mereka menyediakan pendekatan piawai untuk mencipta dan menggunakan perkhidmatan Web, dengan itu meningkatkan kemudahalihan, kebolehskalaan dan kemudahan penggunaan. Dalam ekosistem Java, JAX-RS dan springmvc ialah dua rangka kerja yang paling popular untuk membina API RESTful. Artikel ini akan melihat secara mendalam kedua-dua rangka kerja, membandingkan ciri, kelebihan dan keburukannya untuk membantu anda membuat keputusan termaklum. JAX-RS: JAX-RSAPI JAX-RS (JavaAPI untuk Perkhidmatan Web RESTful) ialah JAX-RSAPI standard yang dibangunkan oleh JavaEE untuk membangunkan REST

Mengoptimumkan pengelogan program: Berkongsi petua tentang menetapkan tahap log log4j Mengoptimumkan pengelogan program: Berkongsi petua tentang menetapkan tahap log log4j Feb 20, 2024 pm 02:27 PM

Mengoptimumkan pengelogan program: Petua untuk menetapkan tahap log log4j Ringkasan: Pengelogan program memainkan peranan penting dalam penyelesaian masalah, penalaan prestasi dan pemantauan sistem. Artikel ini akan berkongsi petua tentang menetapkan tahap log log4j, termasuk cara menetapkan tahap log yang berbeza dan cara menggambarkan proses tetapan melalui contoh kod. Pengenalan: Dalam pembangunan perisian, pembalakan adalah tugas yang sangat penting. Dengan merekodkan maklumat penting semasa proses menjalankan program, ia boleh membantu pembangun mengetahui punca masalah dan melakukan pengoptimuman prestasi dan pemantauan sistem.

Rahsia Java JNDI dan Integrasi Spring: Mendedahkan Kerjasama Lancar Java JNDI dan Rangka Kerja Spring Rahsia Java JNDI dan Integrasi Spring: Mendedahkan Kerjasama Lancar Java JNDI dan Rangka Kerja Spring Feb 25, 2024 pm 01:10 PM

Kelebihan menyepadukan JavaJNDI dengan spring Penyepaduan JavaJNDI dengan kerangka Spring mempunyai banyak kelebihan, termasuk: Memudahkan penggunaan JNDI: Spring menyediakan lapisan abstraksi yang memudahkan penggunaan JNDI tanpa menulis kod JNDI yang kompleks. Pengurusan berpusat sumber JNDI: Spring boleh mengurus sumber JNDI secara berpusat untuk carian dan pengurusan yang mudah. Menyokong berbilang pelaksanaan JNDI: Spring menyokong berbilang pelaksanaan JNDI, termasuk JNDI, JNP, RMI, dsb. Mengintegrasikan rangka kerja Spring dengan lancar: Spring disepadukan dengan sangat rapat dengan JNDI dan disepadukan dengan lancar dengan rangka kerja Spring. Bagaimana untuk mengintegrasikan JavaJNDI dengan rangka kerja Spring untuk mengintegrasikan Ja

Pemahaman mendalam tentang seni bina dan prinsip kerja rangka kerja Spring Pemahaman mendalam tentang seni bina dan prinsip kerja rangka kerja Spring Jan 24, 2024 am 09:41 AM

Analisis mendalam tentang seni bina dan prinsip kerja rangka kerja Spring Pengenalan: Spring ialah salah satu rangka kerja sumber terbuka yang paling popular dalam ekosistem Java Ia bukan sahaja menyediakan set pengurusan kontena dan fungsi suntikan pergantungan yang berkuasa, tetapi juga menyediakan banyak fungsi lain, seperti urus niaga, AOP, akses data, dll. Artikel ini akan memberikan analisis mendalam tentang seni bina dan prinsip kerja rangka kerja Spring, dan menerangkan konsep berkaitan melalui contoh kod tertentu. 1. Konsep teras rangka kerja Spring 1.1IoC (Penyongsangan Kawalan) Teras Spring

Penjelasan terperinci tentang kaedah sambungan pangkalan data Oracle Penjelasan terperinci tentang kaedah sambungan pangkalan data Oracle Mar 08, 2024 am 08:45 AM

Penjelasan terperinci tentang kaedah sambungan pangkalan data Oracle Dalam pembangunan aplikasi, sambungan pangkalan data adalah pautan yang sangat penting, yang membawa interaksi data antara aplikasi dan pangkalan data. Pangkalan data Oracle ialah sistem pengurusan pangkalan data hubungan dengan fungsi berkuasa dan prestasi yang stabil Dalam pembangunan sebenar, kita perlu mahir dalam kaedah sambungan yang berbeza untuk berinteraksi dengan pangkalan data Oracle. Artikel ini akan memperkenalkan secara terperinci beberapa kaedah sambungan biasa pangkalan data Oracle dan menyediakan contoh kod yang sepadan untuk membantu pembaca memahami dan menggunakan dengan lebih baik.

Penggunaan mekanisme refleksi Java dalam rangka kerja Spring? Penggunaan mekanisme refleksi Java dalam rangka kerja Spring? Apr 15, 2024 pm 02:03 PM

Mekanisme refleksi Java digunakan secara meluas dalam rangka kerja Spring untuk aspek berikut: Suntikan ketergantungan: instantiating kacang dan suntikan kebergantungan melalui refleksi. Penukaran jenis: Tukar parameter permintaan kepada jenis parameter kaedah. Penyepaduan rangka kerja kegigihan: memetakan kelas entiti dan jadual pangkalan data. Sokongan AspectJ: memintas panggilan kaedah dan meningkatkan tingkah laku kod. Proksi Dinamik: Cipta objek proksi untuk meningkatkan kelakuan objek asal.