API personalizada

 

Publicado: julio de 2016

Servicios móviles de Microsoft Azure le permite definir una o varias API personalizadas en el servicio móvil. Una API personalizada es un extremo de un servicio móvil al que se tiene acceso con uno o más de los métodos HTTP estándar: GET, POST, PUT, PATCH, DELETE. En un servicio móvil de back-end de JavaScript, los scripts de API personalizados se crean y se editan en el portal o se cargan con el repositorio de Git del servicio.

Para un servicio móvil de back-end de .NET, las API personalizadas se definen como una clase en el proyecto de Visual Studio que se deriva de ApiController e implementa una propiedad Services que devuelve un objeto ApiServices. No hay compatibilidad para las API personalizadas de back-end de .NET en el Portal de administración.

En un back-end de JavaScript, una exportación de función independiente se puede definir para cada método HTTP que admita la API personalizada, todo ello en un archivo de script único. El script registrado se invoca cuando se recibe una solicitud a la API personalizada que usa el método dado. La API personalizada le permite exponer las funciones de servidor que no se asignan a una operación de inserción, actualización, eliminación o lectura o como un trabajo programado. Una API personalizada se llama enviando una solicitud HTTP de un método admitido a una URI en el formato general siguiente.

https://<service_name>.azure-mobile.net/api/<api_name>

Para registrar una API personalizada de JavaScript, haga clic en el botón Crear, seleccione los permisos de los métodos HTTP usados para llamar a la API y, a continuación, haga clic en Aceptar. La siguiente implementación predeterminada de “Hola mundo” para el método POST se genera y se muestra en el editor de script.

exports.post = function(request, response) {
    // Use "request.service" to access features of your mobile service, e.g.:
    //   var tables = request.service.tables;
    //   var push = request.service.push;

    response.send(200, "Hello World");
};

Para obtener un ejemplo de cómo crear y llamar a una API personalizada, vea Llamar a una API personalizada desde el cliente (Tienda Windows C# / Tienda Windows JavaScript / Windows Phone / iOS / Android).

En un back-end de JavaScript, una API personalizada es esencialmente un módulo Node.js que expone una o más funciones públicas que se asignan canónicamente a métodos HTTP. Estas funciones se exponen con el objeto exports, como exports.post en el ejemplo anterior que administra las solicitudes POST. A cada función de API exportada se le pasa un objeto de solicitud y un objeto de respuesta. Estos objetos se implementan con la biblioteca express.js y exponen las API de la biblioteca express.js.

En una API personalizada, puede tener acceso a los objetos globales de script de servidor (push, tables y mssql) desde el objeto de servicio en la solicitud. Como con las operaciones de tabla, puede establecer los mismos permisos en cada método HTTP admitido por la API personalizada. En el caso de clientes autenticados, también puede realizar autorizaciones específicas de usuario según el valor de user.userId del objeto de solicitud suministrado.

System_CAPS_noteNota

Cuando un script de servidor no se ha registrado con un método HTTP en una API personalizada, una solicitud a ese método devuelve un código de error 405.

Para obtener más información sobre la API personalizada, vea la Referencia de scripts de servidor de Servicios móviles.

Mostrar: