Red de conocimiento informático - Problemas con los teléfonos móviles - springcloud fingir devuelve el procesamiento de análisis de mapas

springcloud fingir devuelve el procesamiento de análisis de mapas

Después de que se resolvió el problema del procesamiento multiparámetro de funciones la última vez, apareció un nuevo problema

Springcloud finge el procesamiento de análisis de llamadas multiparámetro

Dirección del código fuente: /ttx_urey/feign-multiple -param

finge devuelve el mapa subyacente

Al analizar la clave o el valor del mapa en un objeto, el objeto se analizará automáticamente en un mapa, lo que provocará una discrepancia de tipo cuando se llame. Cuando una clave o valor de Mapa se analiza como un objeto, el objeto se analizará automáticamente como un Mapa, lo que provocará una falta de coincidencia de tipos durante la llamada. No podemos hacer nada más que continuar resolviendolo.

Idea. : Especifique que el objeto devuelto es un mapa, llame a su propio analizador para procesarlo

Primero, agregue un nuevo analizador propio:

Solo use tuberías

y

p>

Estos dos métodos no están disponibles. p>

Estos dos métodos, debido a que cuando usamos ObjectMapper para analizar Map, necesitamos conocer los tipos de clave y valor de Map, los dos primeros métodos con el mismo nombre sin el parámetro Type no se pueden administrar

A continuación, cree el bean directamente y Spring lo inyectará automáticamente en la lista de resolución

Hay otro problema. Si no elimina el paquete jar jackson-dataformat-xml del archivo pom del generador de fingir, entonces el formato predeterminado devuelto por fingir es xml, por lo que no se puede usar ObjectMapper (aunque se puede usar XmlMapper, pero no me gusta XML), por lo que necesita eliminar el paquete jar

Por si acaso, agregue el paquete jar feign-jackson a los módulos comunes

Abra http://127.0.0.1:8100 /test2

Puedes verlo en el registro de fondo

.