Hello !

Je me demandais pourquoi il n'existait pas de tutoriel sur la création d'une API REST en PHP (par exemple).

Je pense qu'il serait intéressant de voir comment ça marche, comment authentifier avec un token, comment récupérer des données, les ressortir en JSON, les erreurs, tout ça.

Qu'en pensez-vous ?

Bonne journée,
Gasp.

18 réponses


Salut,

Je te conseille cette video:
https://www.grafikart.fr/tutoriels/php/rest-503

Cela couvrira peut être une partie de tes attentes.

Bonne journee

Gaspard
Auteur

Salut Cavalor !

Oui, je connais ce tutoriel, merci :)

Après, mon idée était plus sur le fait de monter une API pas à pas, dans le sens de la base de donnée au résultat final.
Ce tutoriel est adapté à un Framework, ici Laravel il me semble, et pas un truc générique, en pur PHP, si on ne l'utilise pas, bah, faut tout réadapter.

Après, ce n'est qu'une idée comme ça, mais je pense que ça pourrait intéresser des gens, moi le premier.

Bonne journée,
Gasp.

Honnetement avec tout ce qui traine sur le web niveau Rest je crois pas qu'il est besoin d'un tuto

Gaspard
Auteur

Après y'a du bon et du moins bon.

Un tuto clair pour formaliser tout ça serait peut-être pas de trop.

surtous si on y applique une partie securité avec token et autre

Gaspard
Auteur

Oui, c'est vrai qu'on a beaucoup plus de mal à trouver un tutoriel cohérent et simple pour la sécurisation des données de l'API.
Je suis toujours en recherche de savoir vraiment comment ça marche ce système, personnellement.

Il est vrai que la sécurisation des api de type endpoint n'est pas le sujet le plus évident ;) C'est vrai que l'on trouve beaucoup de choses sur la toile, et le conseils ne sont pas tous bons. Je ne suis pas en mesure de t'aider plus donc je m’assied a tes cotes en attendant des conseils avisés.

Gaspard
Auteur

Je t'en prie, assied-toi, j'ai pris du pop-corn, parce que je pense que ça va durer un moment :D

Bonjour,
peut-être que ceci vous conviendra (je n'ai eu l'occasion de lire dans les détails mais ça avait l'air cool
lien

Cordialement
TD

Bonjour.

peut-être que ceci vous conviendra (je n'ai eu l'occasion de lire dans les détails mais ça avait l'air cool

Je ne pense pas que ça va lui convenir, étant donné qu'il reproche que pour le tutoriel sur l'API REST qu'a ennoncé Cavalor, que Grafikart donne l'exemple en s'appuyant sur le Framework Laravel et toi tu lui propose un tutoriel pour le Framework Symfony.
Lui il en voudrait un sans que ce soit pour un CMS/Framework, que ce soit sur du pur PHP.

Ce n'est pas pour autant que je plussoie sa demande, au contraire.

salut,
Comme le 'dit' (ou pense a voix haute) Lartak, il est préférable de se baser sur un framework pour faire une api REST.
Si tu souhaite quelque chose de léger, tu peut utiliser lumen ou encore Slim.
Tu as la deux petit framework qui n'embraquent rien de superflus mais gèrent pour toi les aspect épineux que sont la sécurité, l'authentification (oauth2 ^^), et le routing.
Bonus, lumen étant un laravel ayant suivi un joli régime, le tuto laravel devient utilisable.

pourquoi forcement ce basé sur du PHP? restify est juste magnifique pour créer une api REST avec node, tu peut le faire avec Express aussi, ou encore en JEE

Gaspard
Auteur

En fait, peu importe le langage, le but serait vraiment de le faire, pas à pas, sans outil externe, en brut quoi, histoire de bien comprendre toute les ficelles, et ensuite, bien sûr, on peut l'adapter avec des outils comme Symfony, Slim (que j'utilise dans chacun de mes projets, principalement comme Router), Lumen, Laravel...

Mais le but ici, serait vraiment de mettre la main dans le pâté, pour bien comprendre le fonctionnement du truc.

Bonne journée,
Gasp.

ben deja on as le debut du tuto REST ^^ la création du router en PHP, vue que le routeur se basse sur une url et sur une methode d'entrée, c'est les fondations du l'API ^^

Gaspard
Auteur

Oui, après c'est pas ça le plus compliqué, je pense que c'est plus le côté sécurisation qu'on attends tous :)

En fait, peu importe le langage, le but serait vraiment de le faire, pas à pas, sans outil externe, en brut quoi

Je ne sais pas si tu as relu ton message après l'avoir écrit, mais c'est quand même du n'importe quoi cette partie.
Un tutoriel sur le développement web, ne vas pas être fait sans aborder un langage de particulier en tant que support et un Framework n'est pas un langage au cas où tu l'aurais oublié.
Ensuite, quand tu dis en brut, c'est que tu demandes donc pour PHP, tu ne peux donc pas dire que le langage n'a pas d'importance.

Mais le but ici, serait vraiment de mettre la main dans le pâté, pour bien comprendre le fonctionnement du truc.

C'est justement ce que Grafikart a abordé dans le tutoriel, c'est à dire le principe de fonctionnement de base pour créer une API (méthodes de récupération/ajout/modification et suppression de données).
Pour information, si pour une raison ou une autre quelqu'un se dévoue pour faire un tutoriel concernant la création d'une API, ce n'est pas dit que le sujet exact corresponde à tes attentes.
Pour terminer, je ne voulais pas revenir sur ce que tu as dit dans une partie du contenu de ton sujet :

comment récupérer des données, les ressortir en JSON, les erreurs, tout ça.

Mais concernant ça, soit je n'ai pas vraiment compris ce que tu voulais dire et Grafikart a bien abordé le sujet et il le montre même en utilisant l'extension Postman pour faire les tests de la création de l'API de manière externe à l'application ou alors c'est que tu demandes quelque chose que tu devrais déja savoir faire, comme par exemple faire une requête de sélection en PHP/SQL et encoder des données vers un format JSON.

Dans tous les cas, le tutoriel qu'il avait fait, avait bien pour but la création d'une API et non l'utilisation d'une API tierce, donc la démarche du tutoriel qu'il avait fait est bien en relation avec ce que tu demandes.

je pense qu'il aimerais surtous un tuto sur la securiastion d'une api, avec un token d'auth la securisation de l'echange des donnée et tous le tralalala

Gaspard
Auteur

Je ne sais pas si tu as relu ton message après l'avoir écrit, mais c'est quand même du n'importe quoi cette partie.

D'accord, merci de ton avis.

Ensuite, quand tu dis en brut, c'est que tu demandes donc pour PHP, tu ne peux donc pas dire que le langage n'a pas d'importance.

Ce que je veux dire, c'est que le tutoriel soit en PHP, en RoR, ou même en Scala (me démonte pas, je sais pas si Scala peut faire un système d'API), c'est que l'important c'est les étapes, pas le langage (car forcément, par la suite, tu adaptes suivant le langage qui te correspond le mieux.

un Framework n'est pas un langage au cas où tu l'aurais oublié.

Oui, ça je sais, merci.

c'est à dire le principe de fonctionnement de base pour créer une API (méthodes de récupération/ajout/modification et suppression de données)

Il l'a effectivement fait, en utilisant un Framework, en l'occurence Laravel.

Mais concernant ça, soit je n'ai pas vraiment compris ce que tu voulais dire et Grafikart a bien abordé le sujet et il le montre même en utilisant l'extension Postman pour faire les tests de la création de l'API

Ce que je voulais dire ici, c'est le fait de l'affichage sur une page web avec JSON, comment l'intégrer proprement dans la page.

je pense qu'il aimerais surtous un tuto sur la securiastion d'une api, avec un token d'auth la securisation de l'echange des donnée et tous le tralalala

Effectivement, je pense que ce serait une bonne idée aussi.

Après, mon idée est peut-être tordue hein, mais moi ça m'interroge.

Bonne journée,
Gasp.