Invité Posté : 19 mars 2018 Bonsoir a toutes et a tous :D Aujourd'hui je vais présenter et expliquer mon API qui est disponible sur mon site ( mikioul.fr ), c'est un tuto que je devais faire depuis longtemps mais j'ai pas trop eu le temps, donc je le fait pour la V2 de mon site (mieux vaux tard que jamais :D) ps: Le site n'est pas terminé du tout ! ( il est en Beta ) A) Mon API, a quoi elle sert ? - Elle sert simplement a récupérer des informations sur des skripts disponibles sur Skript-mc dans les ressources, comme sa version, sa note, son nombre de téléchargements et pleins d'autres petites infos .. - Elle donne aussi les listes des derniers skripts postés / mis a jour / et le top 10. B) Qu'est ce que je peut en faire ? - Une partie de l'API est faite spécialement a tout les développeurs de skripts ici présent, qui (tout comme moi avant) ont créer des skripts et ont du inclure un système de version pour leur mise a jour, vous avez surement fait un petit fichier github ou pastebin pour sauvegarder le nom de la version du skript pour pouvoir faire votre système ? Et bien avec mon API c'est terminé ! Vous avez juste besoin de vérifier si le retour que fait la requête est le même que celui sur votre skript ( c'est le nom de la version du skript sur skript-mc, voir tuto en bas) - L'autre partie servira plus aux gens qui veulent faire des applications concrète avec les données retournées, par exemple un bot qui donnera des infos sur un skript précis, une page web avec les tops skripts, un skript avec des infos sur d'autres skripts et j'en passe :D C) Liste des différentes requetes : C'est une Beta de mon site actuellement ! je prévois de rajouter des requetes dans le futur ( et si vous avez des idées dites les moi dans les commentaires :D ) a) Version b) Informations c) 10 dernières mises a jour d) 10 derniers skripts postés e) skripts featured f) 10 meilleurs skripts g) 10 skripts les plus téléchargés Dans le futur mon site proposera d'autres API différentes de Skript-mc ! D) Comment on utilise l'API ? Sur le site, je donne des exemples pour différents langages de programmation, mais ici j'expliquerais uniquement en skript ! Pour les requêtes j'utilise l'addon Reqn, vous en aurez donc besoin ! a) Version On va donc créer la requete (ici sur mon skript Cosmo) command /version: trigger: send a request to "https://mikioul.fr/api/skript/version.php?sk=cosmo.1407" set {_resp} to the last http response set {_body} to {_resp}'s body broadcast "%{_body}%" Le résultat de la requete est en json donc il faudra "découper" le résultat avec skript pour pouvoir s'en servir : command /version: trigger: send a request to "https://mikioul.fr/api/skript/version.php?sk=cosmo.1407" set {_resp} to the last http response set {_body} to {_resp}'s body set {_a::*} to {_body} split at "version"":""" set {_b::*} to {_a::2} split at """" set {_result} to {_b::1} broadcast "%{_result}%" Maintenant on obtient bien le nom de la version indiqué sur note poste Skript-mc, il reste plus que la vérification : options: version: "0.5" command /version: trigger: send a request to "https://mikioul.fr/api/skript/version.php?sk=cosmo.1407" set {_resp} to the last http response set {_body} to {_resp}'s body set {_a::*} to {_body} split at "version"":""" set {_b::*} to {_a::2} split at """" set {_result} to {_b::1} if {@version} is {_result}: broadcast "&2Le skript est a jour !" else: broadcast "&4Le skript n'est pas a jour ! &c(Nouvelle version = %{_result}%)" Important ! Il faut bien mettre la version en chaine de caractère ! b) Informations Pour cette partie (qui est plus compliqué) je vais moins détailler les étapes ! Nous allons partir sur l'exemple du skript de Polymeth "SkWedit". command /informations: trigger: send a request to "https://mikioul.fr/api/skript/informations.php?sk=cosmo.1407" set {_resp} to the last http response set {_body} to {_resp}'s body set {_return::type-list::*} to "fullname", "name", "id", "link", "download_link", "review_link", "description", "category", "image", "version", "size", "date", "update", "rate", "download" and "reviews" loop {_return::type-list::*}: set {_type} to loop-value set {_a::*} to {_body} split at """%{_type}%"":""" set {_b::*} to {_a::2} split at """," set {_result} to {_b::1} broadcast "&c%{_type}% &f-> &a%{_result}%" Donc : Pour cet exemple, je crée une liste avec toutes les informations que je veut récupérer, ensuite je la loop et coupe le retour de ma requête en fonction de mon loop-value ( c'est un peu complexe a expliquer :D ) C'est une Beta, il peut y 'avoir quelques bugs, et tout n'est pas fini . reste) pour les c, d, e, f et g c'est la même requête (il faudra juste changer le lien) : command /last_update: trigger: send a request to "https://mikioul.fr/api/skript/last_update.php" set {_resp} to the last http response set {_body} to {_resp}'s body broadcast "%{_body}%" Voilà le tuto est terminé pour l'instant ! J'espère que ça vous a plu et que mon API vous servira :D A bientot pour de nouvelles fonctionnalités :3 Partager ce message Lien à poster Partager sur d’autres sites
Syst3ms 102 Répondu : 20 mars 2018 Berk, "text from url". Pour rappel, ça bloque le serveur le temps que ça récupère tout. Reqn est bien mieux pour ça Partager ce message Lien à poster Partager sur d’autres sites
sam57730 84 Répondu : 20 mars 2018 Bonne idée d'api, continue comme sa Partager ce message Lien à poster Partager sur d’autres sites
Invité Répondu : 20 mars 2018 Berk, "text from url". Pour rappel, ça bloque le serveur le temps que ça récupère tout. Reqn est bien mieux pour ça Ah dac je savais pas Partager ce message Lien à poster Partager sur d’autres sites
McLincoln2 30 Répondu : 20 mars 2018 Berk, "text from url". Pour rappel, ça bloque le serveur le temps que ça récupère tout. Reqn est bien mieux pour ça Tu aurais un exemple d'utilisation ou simplement la syntaxe ? Partager ce message Lien à poster Partager sur d’autres sites
Invité Répondu : 20 mars 2018 Je mettrais à jour vers cet addon quand j’aurais 5min :D --- Message Fusionné --- Voilà @McLincoln2 j'ai édit avec la nouvelle syntaxe. Merci @Syst3ms :D Partager ce message Lien à poster Partager sur d’autres sites