web-dev-qa-db-fra.com

Exposer la base de données/table MySQL en utilisant REST

Quel serait le moyen le plus simple d'exposer une base de données MySQL en utilisant une interface REST

Les seules directives que je peux trouver sur Internet utilisent simplement NetBeans . Je ne suis pas un grand fan de NetBeans ...

Je voudrais récupérer cela et pouvoir mettre à jour les données sur la base de données en utilisant cette interface REST.

Pour votre information, c'est pour une application iPhone sur laquelle je travaille actuellement.

16
aherlambang

Comme l'a commenté dorkitude, cela dépend des langues que vous pouvez utiliser/que vous souhaitez utiliser.

J'ai trouvé le projet PHPRestSQL qui semble faire ce que vous voulez: http://phprestsql.sourceforge.net/ - je ne l'ai pas essayé moi-même.

4
kander

MySQL 5.7.4 et les versions ultérieures fonctionnent avec le plug-in HTTP, qui propose une API HTTP REST. 

SQL: SELECT * FROM simple ORDER BY id
URL: http://127.0.0.1:8080/sql//SELECT+%2A+FROM+simple+ORDER+BY+id

Cependant, il comporte actuellement un avertissement NOT FIT FOR PRODUCTION.

Annonce de blog.

Docs.

6
user3751385

Une autre option est restSQL, un framework de persistance ultra-léger. http://restsql.org . Il prend en charge MySQL et PostgreSQL et s’exécute dans un conteneur Java EE standard, par exemple. Apache Tomcat.

restSQL est une couche d'accès aux données très peu conventionnelle. restSQL n'est pas une vue orientée objet de la base de données. Il présente des "vues" plates ou hiérarchiques des tables de bases de données relationnelles. Ces vues peuvent être interrogées et mises à jour via une simple API HTTP ou Java basée sur REST. L’interface HTTP est basée sur les principes REST, qui utilisent les fonctionnalités intégrées de HTTP plutôt que de les abstraire.

6
Mark Sawers

Mise à jour 2017:

PHP: Un autre bon joueur dans le domaine est https://slimframework.com

Python: http://python-eve.org/

Pour les personnes qui découvrent cela en 2015, les solutions potentielles qui fonctionnent/sont en cours de développement à compter d’octobre sont les suivantes:

Haskell (binaire): https://github.com/begriffs/postgrest

Java: http://restsql.org/

PHP: https://github.com/moddity/Rester/

5
mozboz

NetBeans est juste un IDE. Cela n'a rien à voir avec REST. Si vous utilisez Java, consultez Restlet ou Jersey . Personnellement, je préfère Jersey, mais les deux fonctionnent.

5
limc

Semble que MySQL obtient l’interface REST en natif, nous pouvons donc interroger la base de données, sans avoir besoin de serveur ... :-)

http://www.infoq.com/news/2014/09/MySQL-REST

3
saiy2k

Si jamais un backend Java est recherché, consultez une réponse que j'ai postée pour Besoin d'écrire un service JSON RESTful en Java qui décrit les étapes à suivre pour vous connecter à la base de données et créer un service Web RESTful Suivant.

  • IDE: Eclipse IDE pour les développeurs Jave EE (Kepler), livré avec Maven intégré
  • Base de données: MySQL (utilise également MySQL Workbench)
  • Serveur d'applications: GlassFish 4.0
  • Java EE 7
    • Jersey pour JAX-RS (implémentation par défaut dans GlassFish) Couche de service RESTful.
    • EclipseLink for JPA (implémentation par défaut dans GlassFish) Couche de persistance.
  • Tout client REST à tester: (par exemple, Postman)
2
ZanGOlie

Une autre option est Slash db qui "génère automatiquement une API REST à partir de bases de données relationnelles".

Depuis juin 2017, cela fonctionne pour les bases de données SQL sans ajustement, mais les autres types de magasins de données nécessitent un plugin développé sur mesure.

Je n'ai lu que ce service (pas un utilisateur). Je n'ai aucune affiliation avec eux.

2
Mark Gavagan

En 2019, vous pouvez utiliser PHP-CRUD-API . C'est un script de fichier unique PHP qui ajoute une API REST à une base de données MySQL 5.6 InnoDB. PostgreSQL 9.1 et MS SQL Server 2012 sont également entièrement pris en charge.

Avertissement: je l'ai écrit.

1
mevdschee

Vous devez également envisager d'utiliser Services de connectivité hybride de DataDirect pour cela. Ils peuvent vous aider rapidement restilisez votre base de données . Pour commencer, vous vous référez aux pages de produits suivantes:

  1. REST API (OData) pour MySQL Community Edition
  2. REST API (OData) pour MySQL Enterprise Edition

Avertissement: je travaille pour DataDirect, mais veuillez noter que je suis sincèrement convaincu que vous devriez examiner ces solutions.

0
user6641561

Je suis tombé sur loopback.io en jouant. C'est un excellent outil pour créer facilement des points de terminaison api pour mysql. Vous pouvez installer un connecteur mysql puis il découvre toutes vos tables mysql et vous pouvez les créer dans des modèles. Je ne connais pas vraiment beaucoup de programmation, mais il est assez facile de trouver une api pour mon sql en une journée. J'ai 19 tables et il a facilement créé mes points finaux.

http://loopback.io

0
FabricioG

L’un des moyens les plus simples de créer des API REST pour n’importe quelle base de données MySql consiste à utiliser Xmysql

  • Xmysql avec une seule commande, vous pouvez obtenir littéralement des milliers d’API En quelques secondes (en fonction du nombre de tables). 
  • Xmysql génère non seulement CRUD mais également des API agrégées sophistiquées. 
  • Xmysql a une documentation très bien écrite qui accompagne dans le repo. 
  • Il y a aussi un support docker
0
npr

Pour les requêtes GET seulement, DBSlayer semble prometteur. Voici un google one qui semble également intéressant. Je ne l'ai pas encore utilisé /

0
gbvb