Comment spécifier sur quel Ip/Host et Port Meteor doit t’il démarrer ?
Par défaut, en mode devl, Meteor démarre sur localhost:3000.
Il est parfois utile de spécifier à Meteor de binder un nom de domaine / port différent (par exemple pour mettre en place une authentification via un réseau social genre Facebook, Twitter, …).
Pour cela il faut utiliser la commande ci-dessous pour exécuter Meteor:
1 |
ROOT_URL=http://myapplication.domain.com:<port>/ meteor --port <port> |
Et Voilà…
Exception « OAuth Server Failed to send OAuth1 request » avec le module Accounts-Twitter ?
Vous essayez de mettre en place une authentification Twitter dans votre appli Meteor et vous vous retrouvez avec une jolie erreur « Internal Server Error » dans le formulaire de login après avoir cliqué sur « Sign in with Twitter »?
Vous avez une exception dans la log meteor du genre :
1 |
Error in OAuth Server: Failed to send OAuth1 request to https://api.twitter.com/oauth/request_token. failed [401] Failed to validate oauth signature and token |
- Hypothèse 1: les consumerKey/secret key sont invalides. (fail lors du copier/coller) .
Voir la question « Comment vérifier/changer les consumerKey/ secret key d’un module accounts-twitter|accounts-facebook|… ? » ci dessous. - Hypothèse 2: (c’était mon cas) l’heure de votre serveur n’est pas d’équerre
Note: Pour activer le réglage de l’heure automatique dans une debian :
1 |
apt-get install ntp |
après l’install de NTP l’heure devrait être correcte (sinon voir le lien suivant https://wiki.debian.org/DateTime)
Pour verifier l’heure taper la commande
1 |
date |
Et Voilà…
Comment vérifier/changer les consumerKey/ secret key d’un module accounts-twitter|accounts-facebook|… ?
Les modules meteor accounts-xxx sont super simples a mettre en place, il suffit de suivre les étapes décrites dans un joli formulaire web et de rentrer les consumer key/secret key et Hop! le tour est joué. Problème une fois le premier setup effectué, le formulaire n’est plus accessible donc il faut aller trifouiller la base de données Mongo pour vérifier/changer les consumerKey/secret key.
Je vais prendre pour exemple l’authentification Twitter (c’est le même principe pour les autres mode d’authentification).
Dans un terminal, se placer dans le dossier de votre appli, puis:
1 |
meteor mongo |
une fois le prompt mongo disponible, faire la query suivante:
1 |
db.meteor_accounts_loginServiceConfiguration.find({service:"twitter"}).pretty() |
Vous devriez avoir une réponse du genre:
1 2 3 4 5 6 |
{ "service" : "twitter", "consumerKey" : "...", "secret" : "...", "_id" : "..." } |
Là vous pouvez vérifier le consumerKey et le secret.
Si vous voulez les modifier alors il suffit d’exécuter un petit Update du genre:
1 |
db.meteor_accounts_loginServiceConfiguration.update({service:"twitter"},{$set:{consumerKey:"<new_consumer_key>", secret:"<new_secret>"}}) |
Et Voilà…
551 réflexions au sujet de « MeteorJS – Trucs et Astuces »