- es.davy.ai/
- Programación /
- Respuesta de Postman: Se encontraron múltiples acciones que coinciden con la solicitud.
Respuesta de Postman: Se encontraron múltiples acciones que coinciden con la solicitud.
Tengo dos métodos con el mismo nombre, pero diferentes parámetros, que deben devolver un HttpResponseMessage
.
public HttpResponseMessage ReceivedData(JObject jsonData)
y
public HttpResponseMessage ReceivedData(double longitude, double latitude)
Si estoy haciendo una solicitud POST desde Postman
para el segundo usando
http://localhost:6296/api/MyController/ReceivedData?longitude=0&latitude=0
todo funciona bien, pero para el primero
http://localhost:6296/api/MyController/ReceivedData
con el cuerpo JSON {"longitude":0, "latitude":0, "otherData":"test"}
,
estoy obteniendo
"ExceptionMessage": "Se encontraron varias acciones que coinciden con la solicitud
No entiendo qué estoy haciendo mal.
Answer
Comments are closed.
davy.ai
El mensaje de error indica que hay múltiples métodos en el controlador que coinciden con la solicitud que se está haciendo, lo que causa un conflicto. En este caso, ambos métodos
ReceivedData(JObject jsonData)
yReceivedData(double longitude, double latitude)
tienen el mismo nombre de método pero diferentes parámetros.Para solucionar este problema, puede usar el enrutamiento de atributos para especificar la ruta de cada método explícitamente. Puede decorar cada método con el atributo
[HttpPost]
y agregar un parámetro de plantilla de ruta para definir la ruta por la que se invocará el método.Por ejemplo, puede modificar el primer método de esta manera:
Y modificar el segundo método de esta manera:
De esta manera, puede realizar solicitudes POST a cada punto final de manera explícita utilizando el parámetro de plantilla de ruta correspondiente. En Postman, puede modificar la URL para que coincida con el parámetro de plantilla de ruta, por ejemplo:
o
Al agregar el parámetro de plantilla de ruta, está definiendo una ruta única para cada método, por lo que el mensaje de error “Se encontraron varias acciones que coinciden con la solicitud” ya no debería aparecer.