Je travaille actuellement sur la construction d'une application Android pour mon backend Rails.RESTful RAILS et Android HttpRequests
J'ai créé api_tokens_controller pour créer un api_token lorsque l'utilisateur se connecte depuis Android en utilisant HttpPost et enregistre ce jeton dans la table des utilisateurs de Rails et les préférences partagées Android. J'ai été capable de vérifier cela.
Je suis en train d'envoyer le api_token comme params [: api_token] de mon application Android à chaque requête après la première connexion et ont Rails vérifier:
En User.rb:
def self.authenticate_with_api_token(api_token_from_mobile)
user = find_by_api_token(api_token_from_mobile)
if user.nil?
return nil
else
return user
end
end
si l'utilisateur existe, envoyez d'autres données en tant que JSONObjects.
Je rencontre des problèmes conceptuellement ici. J'essaie maintenant d'avoir l'application Android aller à ...: 3000/utilisateurs et données utilisateur HttpGet comme JSONObjects. Le problème est que je ne sais pas comment envoyer le api_token de l'application Android à Rails dans HttpGet. Je suppose que comme il est RESTful, mon HttpRequests doit correspondre à la façon dont les chemins de rails fonctionne.
Questions:
Est-il possible d'envoyer JSONObject de params [: api_token] de l'application Android pour Rails en HttpGet? Mes requêtes HttpRes doivent-elles correspondre à la méthode RESTful? Rails fonctionne-t-il ou puis-je seulement utiliser HttpPost?
Merci
Salut Tom, merci pour votre réponse. Avec l'application mobile, je dois envoyer des données (api_token) et recevoir des données à chaque demande. J'ai pu utiliser HttpPost pour envoyer des informations de connexion et recevoir api_token à partir de rails en même temps sous l'action de création apitokenscontroller. J'essaye d'aller à userscontroller avec cet api_token pour l'envoyer pour la vérification et renvoyer des données tout dans une demande aussi bien. Mon problème est avec la façon dont les chemins de rails fonctionnent où le type de requête http (GET, POST, PUT, & etc.) et route (/ users, users/1, etc.) détermine l'action. – railslearner
Salut Tom, j'ai lu plus à ce sujet et je pense que votre réponse pourrait être. J'ai de la difficulté à comprendre le paramètre de l'URL parce que je contourne les routes RESTful. HttpPost m'a permis d'envoyer des params [] sans rien changer dans l'URL, et je pensais que HttpGet devrait avoir quelque chose comme ça aussi. Mais, si je peux seulement envoyer un paramètre via l'URL et que je le spécifie à ...: 3000/users.json? Api_token = token, dois-je spécifier sur le côté rails (dans l'index de UsersController) que params [: api_token] est attendu? Merci – railslearner
J'ai vérifié que cela fonctionne – railslearner