web-dev-qa-db-fra.com

Comment créer une API REST pour une application Ruby on Rails 5)?

J'ai une application Rails 5 avec ActionCable et Devise gem hébergée sur Heroku avec 15 000 utilisateurs. De nombreux utilisateurs ont suggéré de publier une application mobile pour le site Web. Je veux commencer par créer une application mobile de base pour le site Web.

Lorsque je google, tout ce que je reçois est un guide API uniquement. Existe-t-il des didacticiels ou des livres ou des ressources qui montrent comment créer une API REST pour une application Rails existante)?

Quelqu'un peut-il bien vouloir vous guider sur la façon de procéder? Comment authentifier les utilisateurs? Comment utiliser le chat en temps réel? Dois-je utiliser un bijou? Veuillez partager comment commencer et les meilleures pratiques. Merci

13
LovingRails

Existe-t-il des tutoriels ou des livres ou des ressources qui montrent comment créer une API REST pour une application Rails existante)?

Oui. Cette Railscast est très utile. Il explique comment configurer les parties de base d'une API reposante pour une application déjà fonctionnelle (bien que très simple) Rails app.

Il a quelques années, mais devrait toujours fonctionner pour Rails 5.

4
user3680688

Vous pouvez utiliser raisin gem. Découvrez son section d'intégration de Rails .

Puisque vous avez déjà quelques routes en place, il vous suffit de choisir un chemin racine inutilisé pour votre API et de le monter là:

mount Twitter::API => '/api'
3
Nic Nilov

J'ai passé des jours à essayer de comprendre cela moi-même. Finalement, j'ai pu le faire en utilisant les gemmes 'grape', 'rack-cors' et 'grape-active_model_serializer' et j'ai rédigé un tutoriel rapide. Devrait fonctionner pour Rails 5.2 et 6.0. Vous pouvez le vérifier ici: https://medium.com/@ryanwaldorf/how-to-add-an-api-to -une-application-Rails-1d2419ba91bd existante

J'espère que cela aide tout le monde!

1
Ryan Waldorf

Peut-être que vous pouvez utiliser activemodel serializers gem, il fait partie de Rails 5. si vous n'utilisez pas actuellement Rails 5 mode api, vous pouvez ajouter activemodel serializers gem à votre Gemfile.

peut être ceci tutoriel aidera

0
alxibra

Je vous recommande de commencer à chercher les réponses JSON, dans Rails vous avez tout ce dont vous avez besoin pour créer une application web et une API avec les mêmes contrôleurs. Vous devez commencer par 'respond_to' pour JSON. Pour commencer à jouer, utilisez un échafaudage pour la génération de contrôleurs et il vous fournira un répondeur pour JSON et HTML.

0
Paulo Fidalgo

Je pense que vous commencez d'abord par l'authentification API. Cette gemme peut convenir à votre besoin: https://github.com/lynndylanhurley/devise_token_auth

0
Tan

Puisque vous souhaitez intégrer une API RESTful avec une application Rails existante, vous devez vous référer à ce guide .

Il s'agit d'un guide plus convivial sur la façon d'intégrer Grape (comme l'a mentionné Nic Nilov) avec votre application Rails 5). Ce guide suppose que vous avez déjà un = Rails application.

J'espère que cela aide!

0
Yuri