Ricerca…


Chiamata HTTP di base

Concettualmente, integrare le API REST di terze parti può essere semplice come aggiungere il pacchetto http e effettuare una chiamata all'endpoint esterno.

meteor add http
HTTP.get('http://foo.net/api/bar/');

Crea un pacchetto per il tuo wrapper API

Le chiamate HTTP di base non forniscono tuttavia la riusabilità del codice. E possono confondersi con tutte le altre funzionalità che stai cercando di implementare. Per questi motivi, è comune implementare un wrapper 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 supporta Http.get (), Http.post (), Http.put (), ecc., Quindi è indubbiamente il modo migliore per chiamare l'API REST. http://docs.meteor.com/#http_get

Se l'API è chiacchierona e prolissa, potresti ricevere più pacchetti; nel qual caso dovrai riassemblarli. Questa è una grande seccatura. Se pensi che l'API restituisca più pacchetti, probabilmente vorrai utilizzare il modulo npm 'request' sul server. Ti consigliamo di utilizzare un Npm.require('request') . https://github.com/mikeal/request

Crea un pacchetto atmosfera per il tuo wrapper API

Dopo aver creato un wrapper API, è probabile che tu voglia creare un pacchetto Atmosphere per ridistribuirlo e condividerlo tra le applicazioni. I file del tuo pacchetto probabilmente assomigliano a questo.

packages/foo-api-wrapper/package.js
packages/foo-api-wrapper/readme.md
packages/foo-api-wrapper/foo.api.wrapper.js

In particolare, il tuo file foo-api-wrapper/package.js avrà un aspetto simile a questo:

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"]);
});

E il tuo foo-api-wrapper/foo.api.wrapper.js dovrebbe contenere l'oggetto wrapper API Foo .

Includi il pacchetto API nella tua applicazione

A questo punto, stai ancora creando il tuo pacchetto, quindi dovrai aggiungere il pacchetto alla tua applicazione:

meteor add myaccount:foo

E alla fine pubblicarlo su Atmosphere:

meteor publish myaccount:foo

Utilizzando l'oggetto wrapper API nella tua app

Ora che abbiamo messo insieme tutti questi pezzi, ora dovresti essere in grado di effettuare chiamate come le seguenti dalla tua app:

Foo.identify('John');
Foo.record_action_on_item('view', "HackerNews');

Ovviamente vorrete adattare nomi di funzioni, argomenti, url e simili, per creare la sintassi corretta per l'API.



Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow