Buscar..
Llamada HTTP básica
Conceptualmente, la integración de API REST de terceros puede ser tan simple como agregar el paquete http
y hacer una llamada al punto final externo.
meteor add http
HTTP.get('http://foo.net/api/bar/');
Crear un paquete para su envoltura de API
Sin embargo, las llamadas HTTP básicas no proporcionan reutilización de código. Y pueden confundirse con todas las otras características que intenta implementar. Por esas razones, es común implementar un contenedor de API.
Foo = {
identify: function(input){
return Http.get('http://foo.net/api/identify/' + input);
},
record_action_on_item: function(firstInput, secondInput){
return Http.put('http://foo.net/api/record_action_on_item/' + firstInput + '&' + secondInput);
}
}
Meteor admite Http.get (), Http.post (), Http.put (), etc., por lo que es indudablemente la mejor manera de llamar a su API REST. http://docs.meteor.com/#http_get
Si la API es conversacional y detallada, puede recibir varios paquetes; en cuyo caso tendrás que volver a montarlos. Esta es una gran molestia. Si cree que la API está devolviendo varios paquetes, probablemente desee utilizar el módulo npm "request" en el servidor. Usted querrá usar un Npm.require('request')
. https://github.com/mikeal/request
Cree un paquete de ambiente para su envoltura de API
Después de crear un contenedor de API, es probable que desee crear un paquete Atmosphere para redistribuirlo y compartirlo entre aplicaciones. Los archivos de su paquete probablemente se verán así.
packages/foo-api-wrapper/package.js
packages/foo-api-wrapper/readme.md
packages/foo-api-wrapper/foo.api.wrapper.js
En particular, su archivo foo-api-wrapper/package.js
querrá verse así:
Package.describe({
summary: "Atmosphere package that impliments the Foo API.",
name: "myaccount:foo",
version: '0.0.1'
});
Package.on_use(function (api) {
api.export('Foo');
api.addFiles('foo.api.wrapper.js', ["client","server"]);
});
Y tu foo-api-wrapper/foo.api.wrapper.js
debe contener el objeto de envoltura de API de Foo
.
Incluya el paquete API en su aplicación
En este punto, todavía está creando su paquete, por lo que deberá agregar el paquete a su aplicación:
meteor add myaccount:foo
Y eventualmente publicarlo en Atmosphere:
meteor publish myaccount:foo
Usando el objeto contenedor de API en su aplicación
Ahora que hemos reunido todas esas piezas, ahora debería poder hacer llamadas como las siguientes desde su aplicación:
Foo.identify('John');
Foo.record_action_on_item('view', "HackerNews');
Obviamente, querrá ajustar los nombres de funciones, argumentos, urls y similares para crear la sintaxis adecuada para la API.