Descargar PDF
1) ¿Qué es la API web?
WebAPI es un marco que le ayuda a crear / desarrollar servicios HTTP.
2) ¿Por qué se requiere API web? ¿Es posible usar servicios RESTful usando WCF?
Sí, todavía podemos desarrollar servicios RESTful con WCF. Sin embargo, hay dos razones principales por las que los usuarios deben utilizar la API web en lugar de los servicios RESTful.
- Web API aumenta el enfoque TDD (Test Data Driven) en el desarrollo de servicios RESTful.
- Si queremos desarrollar servicios RESTful en WCF, seguramente necesitará una gran cantidad de configuraciones, plantillas URI, contratos y puntos finales para desarrollar servicios RESTful usando API web.
3) ¿Por qué seleccionar API web?
- Se utiliza para crear servicios HTTP sencillos y no basados en SOAP.
- También es un método fácil de creación con Web API. Con servicios REST WCF
- Está basado en HTTP y es fácil de definir, exponer y consumir de forma REST.
- Es una arquitectura liviana e ideal para dispositivos que tienen un ancho de banda limitado como los teléfonos inteligentes.
4) ¿Es correcto que ASP.NET Web API haya reemplazado a WCF?
No es del todo cierto que ASP.NET Web API haya reemplazado a WCF. De hecho, es otra forma de crear servicios no basados en SOAP, es decir, XML simple o cadena JSON.
5) ¿Cuáles son las ventajas de la API web?
Las ventajas de la API web son:
- OData
- Filtros
- Negociación de contenido
- Autohospedaje
- Enrutamiento
- Enlaces de modelo
6) ¿Cuáles son los principales tipos de devolución admitidos en la API web?
Una acción de controlador de API web puede devolver los siguientes valores:
- Void: devolverá contenido vacío
- HttpResponseMessage: convertirá la respuesta en un mensaje HTTP.
- IHttpActionResult: llama internamente a ExecuteAsync para crear un HttpResponseMessage
- Otros tipos: puede escribir el valor de retorno serializado en el cuerpo de la respuesta
7) ¿Qué protocolo admite la API web?
La aplicación web es compatible con el protocolo HTTP.
8) ¿Qué marco .NET admite Web API?
NET 4.0 y la versión superior es compatible con API web.
9) ¿Cuál de las siguientes bibliotecas de código abierto utiliza la API web para la serialización JSON?
La API web utiliza la biblioteca Json.NET para la serialización JSON.
10) De forma predeterminada, la API web envía una respuesta HTTP con cuál de los siguientes códigos de estado para todas las excepciones no detectadas.
Error interno de servidor 500
11) ¿Cuál es la mayor desventaja de "Otros tipos de devoluciones" en la API web?
La mayor desventaja de este enfoque es que no puede devolver directamente un código de error como el error 404.
12) ¿Cómo se construye HtmlResponseMessage?
A continuación se muestra la forma de construir para hacerlo,
public class TestController : ApiController{public HttpResponseMessage Get(){HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.OK, "value");response.Content = new StringContent("Testing", Encoding.Unicode);response.Headers.CacheControl = new CacheControlHeaderValue(){MaxAge = TimeSpan.FromMinutes(20)};return response;}}
13) ¿Qué es el enrutamiento de API web?
El enrutamiento es una coincidencia de patrones como en MVC.
Todas las rutas se registran en las tablas de rutas.
Por ejemplo:
Routes.MapHttpRoute(Name: "ExampleWebAPIRoute",routeTemplate: “api/{controller}/{id}defaults: new { id = RouteParameter.Optional}
14) ¿Qué es SOAP?
SOAP es un formato de mensaje XML utilizado en interacciones de servicios web. Permite enviar mensajes a través de HTTP o JMS, pero se pueden utilizar otros protocolos de transporte. También es un protocolo de mensajería basado en XML para intercambiar información entre computadoras.
15) ¿Cuál es el beneficio de usar REST en Web API?
REST se usa para realizar menos transferencias de datos entre el cliente y el servidor, lo que lo hace ideal para usarlo en aplicaciones móviles. La API web también admite el protocolo HTTP. Por lo tanto, reintroduce la forma tradicional de comunicación de los verbos HTTP.
16) ¿Cómo podemos utilizar Web API con ASP.NET Web Form?
La API web se puede utilizar con ASP.NET Web Form
Se puede realizar en tres sencillos pasos:
- Cree un controlador de API web,
- Agregue una tabla de enrutamiento al método Application_Start de Global.sax
- Luego, debe realizar una llamada jQuery AJAX al método API web y obtener datos.
17) ¿Cómo se puede limitar el acceso a la API web a un verbo HTTP específico?
La programación de atributos juega un papel importante. Es fácil restringir el acceso a un método de API web ASP.NET para ser llamado usando un método HTTP en particular.
18) ¿Puede utilizar Web API con ASP.NET Web Form?
Sí, es posible utilizar la API web con el formulario web ASP.Net. Como está incluido con el marco ASP.NET MVC. Sin embargo, se puede utilizar con ASP.NET Web Form.
19) ¿Cómo se puede asignar un nombre de alias para la acción de la API web ASP.NET?
Podemos dar un nombre de alias para la acción de la API web como en el caso de ASP.NET MVC usando el atributo "ActionName" de la siguiente manera:
[HttpPost][ActionName("SaveStudentInfo")]public void UpdateStudent(Student aStudent){StudentRepository.AddStudent(aStudent);}
20) ¿Cuál es el significado de TestApi?
TestApi es una biblioteca de utilidades de API. Con esta biblioteca, el desarrollador de pruebas puede crear herramientas de prueba y pruebas automatizadas para una aplicación .NET utilizando estructura de datos y algoritmos.
21) ¿Explica los filtros de excepción?
Se ejecutará cuando las excepciones no se controlen y se lancen desde un método de controlador. El motivo de la excepción puede ser cualquier cosa. Los filtros de excepción implementarán la interfaz "IExceptionFilter".
22) ¿Cómo podemos registrar el filtro de excepción de la acción?
Podemos registrar el filtro de excepción de la acción usando el siguiente código:
[NotImplExceptionFilter]public TestCustomer GetMyTestCustomer(int custid){//write the code}
23) ¿Cómo se puede devolver la vista desde el método ASP.NET Web API?
No, no podemos devolver una vista del método de API web ASP.NET. La API web crea servicios HTTP que procesan datos sin procesar. Sin embargo, también es posible en la aplicación ASP.NET MVC.
24) ¿Cómo registrar el filtro de excepciones a nivel mundial?
Es posible registrar el filtro de excepción globalmente usando el siguiente código:
GlobalConfiguration.Configuration.Filters.Add (nuevo
MyTestCustomerStore.NotImplExceptionFilterAttribute ());
25) Explique qué es DESCANSO y RESTAURANTE.
REST representa Transferencia de Estado REpresentacional; es un aspecto completamente nuevo de escribir una aplicación web.
RESTFUL: Es un término que se escribe aplicando conceptos arquitectónicos REST y se denomina servicios RESTful. Se centra en los recursos del sistema y en cómo se debe transportar el estado del recurso a través del protocolo HTTP.
26) ¿Darme un ejemplo de enrutamiento de API web?
Config.Routes.MapHttpRoute(name: "MyRoute,"//route namerouteTemplate: "api/{controller}/{action}/{id}",//as you can see "API" is at the beginning.defaults: new { id = RouteParameter.Optional });
27) ¿Cómo se pueden manejar los errores en la API web?
Varias clases están disponibles en Web API para manejar errores. Son HttpError, Exception Filters, HttpResponseException y Registering Exception Filters.
28) ¿Qué nuevas funciones incluye ASP.NET Web API 2.0?
Las últimas características de ASP.NET Web API framework v2.0 son las siguientes:
- Enrutamiento de atributos
- Uso compartido de recursos de origen cruzado
- Autenticación externa
- Interfaz web abierta NET
- HttpActionResult
- OData de API web
29) ¿Cómo se pueden restringir los métodos de acceso a verbos HTTP específicos en la API web?
Con la ayuda de los atributos (como los verbos HTTP), es posible implementar restricciones de acceso en la API web.
Es posible definir verbos HTTP como un atributo para restringir el acceso. Ejemplo:
[HttpPost]public void Method1(Class obj){//logic
30) ¿Cómo se pueden pasar varios tipos complejos en la API web?
Dos métodos para pasar los tipos complejos en la API web:
Usando ArrayList y Newtonsoft array
31) ¿Escribe un código para pasar ArrayList en la API web?
ArrayList paramList = new ArrayList();Category c = new Category { CategoryId = 1, CategoryName =“MobilePhones”};Product p = new Product { Productcode = 1, Name = “MotoG”, Price = 15500, CategoryID = 1 };paramList.Add(c);paramList.Add(p);
32) ¿Nombra las herramientas o API para desarrollar o probar una API web?
Las herramientas de prueba para servicios web para API REST incluyen:
- API de Jersey
- CFX
- Eje
- Restlet
33) ¿Qué es DESCANSO?
REST es estilo arquitectónico. Tiene pautas definidas para la creación de servicios escalables. REST usado con el protocolo HTTP usando sus verbos GET, PUT, POST y DELETE.
34) ¿Cómo realizar una prueba unitaria de la API web?
Podemos realizar una prueba unitaria utilizando herramientas de API web como Fiddler.
Aquí hay algunos ajustes que debe realizar si está utilizando
Fiddler - Ficha Composición -> Ingresar encabezados de solicitud -> Ingresar el cuerpo de la solicitud y ejecutar
35) ¿Cómo podemos restringir el acceso a métodos con verbos HTTP específicos en la API web?
La programación de atributos se usa ampliamente para esta funcionalidad. La API web también permite restringir el acceso a los métodos de llamada con la ayuda de verbos HTTP específicos. También es posible definir verbos HTTP como atributo sobre método.
36) ¿Cuál es el uso de DelegatingHandler?
DelegatingHandler se utiliza en la API web para representar los controladores de mensajes antes del enrutamiento.
37) ¿Cómo podemos registrar el filtro de excepción de la acción?
Podemos registrar el filtro de excepción de la acción usando el siguiente código
[NotImplExceptionFilter]public TestCust GetMyTestCust (int custno){//write the code}
38) Dime el fragmento de código para mostrar cómo podemos devolver errores 404 de HttpError.
Código para devolver el error 404 de HttpError
string message = string.Format ("TestCustomer id = {0} not found", customerid);
return Request.CreateErrorResponse (HttpStatusCode.NotFound, mensaje);
39) ¿Explica el fragmento de código para registrar los filtros de excepción del controlador?
[NotImplExceptionFilter]public class TestCustController : Controller{//Your code goes here}
40) ¿Qué protocolo admite la API web?
Aplicación web compatible con el protocolo HTTP
41) ¿Cuál de los siguientes marcos .NET es compatible con Web API?
La API web es compatible con la versión NET 4.0
42) ¿Qué biblioteca utiliza la API web para la serialización JSON?
La API web utiliza la biblioteca Json.NET para la serialización JSON.
43) De forma predeterminada, la API web envía una respuesta HTTP con cuál de los siguientes códigos de estado para todas las excepciones no detectadas.
Error interno de servidor 500
44) ¿Explica el método para manejar el error usando HttpError en la API web?
En la API WEB, HttpError solía arrojar la información del error en el cuerpo de la respuesta. El método "CreateErrorResponse" también se puede utilizar junto con este, que es un método de extensión definido en "HttpRequestMessageExtension".
45) ¿Cómo podemos registrar el filtro de excepciones a nivel mundial?
Podemos registrar el filtro de excepción globalmente usando el siguiente código:
GlobalConfiguration.Configuration.Filters.Add (new MyTestCustomerStore.NotImplExceptionFilterAttribute());
46) ¿Cómo manejar los errores en la API web?
Varias clases están disponibles en Web API para manejar errores. Son HttpError, HttpResponseException, Filtros de excepción, Registrar filtros de excepción.
47) ¿Cuál es el beneficio de WebAPI sobre WCF?
Los servicios WCF usan el protocolo SOAP, mientras que HTTP nunca usa el protocolo SOAP. Es por eso que los servicios WebAPI son livianos ya que no se usa SOAP. También reduce los datos que se transfieren para reanudar el servicio. Además, nunca necesita demasiada configuración. Por lo tanto, el cliente puede interactuar con el servicio utilizando los verbos HTTP.
48) Indique las diferencias entre MVC y WebAPI
El marco MVC se utiliza para desarrollar aplicaciones que tienen interfaz de usuario. Para eso, las vistas se pueden usar para construir una interfaz de usuario.
WebAPI se utiliza para desarrollar servicios HTTP. Otras aplicaciones también pueden denominarse métodos WebAPI para recuperar esos datos.
49) ¿Quién puede consumir WebAPI?
Cualquier cliente que admita verbos HTTP como GET, PUT, DELETE, POST puede consumir WebAPI. Como los servicios WebAPI no necesitan ninguna configuración, son muy fáciles de consumir por cualquier cliente. Infract, incluso los dispositivos portátiles como los dispositivos móviles pueden consumir fácilmente WebAPI, que es sin duda la mayor ventaja de esta tecnología.
50) ¿Cómo podemos asegurarnos de que la API web devuelva solo datos JSON?
Para hacer que Web API serialice el objeto de retorno al formato JSON y devuelva solo datos JSON Para eso, debe agregar el siguiente código en la clase WebApiConfig.cs en cualquier proyecto de API web MVC:
//JsonFormatter//MediaTypeHeaderValueConfig.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"));123//JsonFormatter//MediaTypeHeaderValueConfig.Formatters.JsonFormatter.SupportedMediaTypes.Add(new MediaTypeHeaderValue("application/json"))