Pregunta

Hace poco vi un ejemplo de jQuery en el que se hizo un POST a "Default.aspx / Test", donde Test era un método Web en Default.aspx, y el tipo de contenido para la solicitud era " application / json "

La respuesta de WebMethod fue en JSON. Siempre pensé que WebMethods devolvía las respuestas de SOAP, pero si estoy interpretando este código correctamente, como dije, WebMethod devuelve JSON.

¿Esto es correcto? ¿WebMethods devuelve una respuesta en el formato del tipo de contenido de la solicitud? ¿Desde cuándo esto ha sido posible? ¿Siempre? ¿O es esto porque tengo ASP.NET AJAX instalado? Si es así, ¿qué espacios de nombres puedo desmontar para ver cómo funciona esto?

Solo he usado WebMethods para la comunicación de .NET a .NET, que ha estado en SOAP, y siempre escribí un código personalizado para responder en el formato correcto (SOAP, JSON o XML), basado en un parámetro de cadena de consulta de solicitud especificando el formato deseado. Siempre pensé que WCF era necesario para este tipo de funcionalidad de metformato.

¿Fue útil?

Solución

Forma parte de ASP.NET AJAX . Consulte, por ejemplo, Uso de servicios web en ASP.NET AJAX . Parte de la arquitectura del cliente AJAX es así:

  

Llame a los servicios web utilizando el verbo HTTP POST. Una solicitud POST tiene un cuerpo que contiene los datos que el navegador envía al servidor. No tiene una limitación de tamaño. Por lo tanto, puede utilizar una solicitud POST cuando el tamaño de los datos excede el límite de tamaño intrínseco para una solicitud GET. El cliente serializa la solicitud en formato JSON y la envía como datos POST al servidor. El servidor deserializa los datos de JSON en tipos de .NET Framework y realiza la llamada del servicio web real. Durante la respuesta, el servidor serializa los valores de retorno y los transfiere al cliente, lo que los deserializa en objetos JavaScript para su procesamiento.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top