Sök…
Grundläggande HTTP-samtal
Konceptuellt kan integrera REST-API: er från tredje part vara så enkelt som att lägga till http
paketet och ringa till den externa slutpunkten.
meteor add http
HTTP.get('http://foo.net/api/bar/');
Skapa ett paket för din API-wrapper
Grundläggande HTTP-samtal ger emellertid inte kodåteranvändbarhet. Och de kan bli förvirrade med alla andra funktioner du försöker implementera. Av dessa skäl är det vanligt att implementera en API-omslag.
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 stöder Http.get (), Http.post (), Http.put () osv., Så det är utan tvekan det bästa sättet att kalla ditt REST-API. http://docs.meteor.com/#http_get
Om API: n är chattig och ordbok kan du få flera paket; i vilket fall måste du sätta ihop dem igen. Det här är en stor krångel. Om du tror att API returnerar flera paket, kommer du förmodligen att vilja använda "begäran" npm-modulen på servern. Du vill använda en Npm.require('request')
. https://github.com/mikeal/request
Skapa ett atmosfärspaket för din API-wrapper
När du har skapat ett API-omslag är det troligt att du kanske vill skapa ett Atmosphere-paket för att omfördela det och dela det mellan applikationer. Filerna i ditt paket ser förmodligen ut så här.
packages/foo-api-wrapper/package.js
packages/foo-api-wrapper/readme.md
packages/foo-api-wrapper/foo.api.wrapper.js
Speciellt kommer din foo-api-wrapper/package.js
fil att se ut så här:
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"]);
});
Och ditt foo-api-wrapper/foo.api.wrapper.js
bör innehålla Foo
API-wrapperobjektet.
Inkludera API-paketet i din applikation
Just nu bygger du fortfarande ditt paket, så du måste lägga till paketet i din applikation:
meteor add myaccount:foo
Och så småningom publicera det till Atmosphere:
meteor publish myaccount:foo
Använda API Wrapper-objektet i din app
Nu när vi har alla dessa stycken sammansatt bör du nu kunna ringa samtal som följande från din app:
Foo.identify('John');
Foo.record_action_on_item('view', "HackerNews');
Uppenbarligen vill du justera funktionsnamn, argument, webbadresser och liknande för att skapa rätt syntax för API: n.