Ok voici l'API Twitter,
http://search.Twitter.com/search.atom?q=perkytweets
Quelqu'un peut-il me dire comment appeler cette API ou ce lien à l'aide de Meteor
Mettre à jour::
Voici le code que j'ai essayé mais sa ne montre aucune réponse
if (Meteor.isClient) {
Template.hello.greeting = function () {
return "Welcome to HelloWorld";
};
Template.hello.events({
'click input' : function () {
checkTwitter();
}
});
Meteor.methods({checkTwitter: function () {
this.unblock();
var result = Meteor.http.call("GET", "http://search.Twitter.com/search.atom?q=perkytweets");
alert(result.statusCode);
}});
}
if (Meteor.isServer) {
Meteor.startup(function () {
});
}
Vous définissez votre checkTwitter Meteor.methodinside dans un bloc client. Étant donné que vous ne pouvez pas appeler cross domain à partir du client (sauf si vous utilisez jsonp), vous devez placer ce bloc dans un bloc Meteor.isServer
.
En passant, d'après la documentation , le Meteor.method
côté client de votre fonction checkTwitter est simplement un stub d'une méthode côté serveur. Vous voudrez consulter la documentation pour une explication complète de la manière dont Meteor.methods
côté serveur et côté client fonctionnent ensemble.
Voici un exemple de travail de l'appel http:
if (Meteor.isServer) {
Meteor.methods({
checkTwitter: function () {
this.unblock();
return Meteor.http.call("GET", "http://search.Twitter.com/search.json?q=perkytweets");
}
});
}
//invoke the server method
if (Meteor.isClient) {
Meteor.call("checkTwitter", function(error, results) {
console.log(results.content); //results.data should be a JSON object
});
}
Cela peut sembler rudimentaire - mais le paquet HTTP ne vient pas par défaut dans votre projet Meteor et nécessite de l’installer à la carte.
Sur la ligne de commande, soit:
Juste météore:
météore ajouter http
Météorite:
mrt ajouter http
Meteor.http.get sur le client est asynchrone, vous devrez donc fournir une fonction de rappel:
Meteor.http.call("GET",url,function(error,result){
console.log(result.statusCode);
});
Utilisez Meteor.http.get
. Par les docs :
Meteor.http.get(url, [options], [asyncCallback]) Anywhere Send an HTTP GET request. Equivalent to Meteor.http.call("GET", ...).
La documentation contient en fait des exemples d'utilisation de Twitter, vous devriez donc pouvoir vous y familiariser.
côté serveur, si vous rappelez http.get, ce sera un appel asynchrone, donc mes solutions pour ce retour non défini sur le client
var result = HTTP.get (iurl); return result.data.response;
comme je n'ai pas repassé un appel à HTTP.get, il a attendu que je reçoive une réponse. J'espère que ça aide