Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 21620|Yanıt: 1

[Kaynak] Spring Cloud Filter, istenen içeriği ContentCachingRequestWrapper üzerinden getirir

[Bağlantıyı kopyala]
Yayınlandı 9.08.2021 14:18:46 | | | |
Gereksinimler: Arayüzün istek içeriğini günlüğe kaydedin; bu da POST, PUT, Silme vb. tarafından gönderilen içeriği ifade eder ve içerik bir form veya json dizisi olabilir.

Deneyimi olan herkes bilir ki, filtrede HttpServletRequest veya HttpServletResponse akışını okursak, tekrar okumanın bir yolunu bulamaz ve bu da isteğin olağanüstü olmasına yol açar. Bu nedenle, veri akışının okumalarını tekrarlamak için Spring tarafından sağlanan ContentCachingRequestWrapper ve ContentCachingRequestWrapper kullanmamız gerekiyor.
Önce renderlere bakalım, aşağıdaki gibi:



Bir talebin istek içeriği bilgisini içerip içermediğini belirlemek için kod şöyledir ("Çok bölümlü/form-veri" dosya gönderimleri hariç tutuldu):

İstenen içerik bilgilerini alın:

Filtre kodu:


Not:chain.doFilter yöntemini çağırdıktan sonra istenen içeriği alabilirsinizPrensip, denetleyici InputStream'i aldığında, ContentCachingRequestWrapper'ın içeriği bir değişkene önbellemesi yönündedir.

Bağlantı girişi görünür.
Bağlantı girişi görünür.


(Son)




Önceki:CentOS 7 kurulumu mongodb 5.0.1 eğitimi
Önümüzdeki:Maven güncellemePolitika anlık görüntü güncelleme politikası
 Ev sahibi| Yayınlandı 9.08.2021 14:27:30 |
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com