« Documentation de l'API Jeuxvideo.com » : différence entre les versions
Aucun résumé des modifications |
|||
Ligne 129 : | Ligne 129 : | ||
=== Messages privés === | === Messages privés === | ||
'' | L'id de l'utilisateur mentionnée ci-dessous correspond à la partie du cookie ''wenvjgol'' qui se trouve avant le premier "$". | ||
Une fois connecté, vous devez envoyer le cookie ''wenvjgol'' à chaque requête. | |||
{| class="wikitable alternance centre" | |||
! scope="col" | URL | |||
! scope="col" | Description | |||
|- | |||
| messages-prives/connexion_ws.php | |||
| Les paramètres sont les mêmes que pour la connexion depuis ''mon_compte/connexion.php'', décrite [[#Connexion|plus haut]]. Cependant, la réponse XML contient quelques informations supplémentaires à propos des MP. | |||
|- | |||
| messages-prives/boite-reception_ws.php | |||
| Cette requête permet de récupérer quelques informations, comme le nombre de messages non-lus. Paramètres à envoyer : | |||
* ''newnom'' : Pseudo de l'utilisateur | |||
* ''id_user'' : id de l'utilisateur | |||
|- | |||
| messages-prives/boite-reception_ws.php | |||
| Permet de connaître le contenu de la boîte de réception. Paramètre à envoyer : | |||
* ''id_user'' : id de l'utilisateur | |||
|- | |||
| messages-prives/message_ws.php | |||
| Permet de lire le contenu d'un message privé. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur | |||
* ''id_discussion'' : id de la discussion | |||
* ''nb_clic'' : le nombre de fois où l'utilisateur a cliqué sur « Voir les messages précédents » | |||
* ''last_position_message'' : Si ce paramètre vaut 0, les 5 derniers messages sont affichés. Sinon, les 10 messages les plus anciens en partant du ''x''<sup>ème</sup> sont affichés, la numérotation débutant à partir de 0. | |||
|- | |||
| messages-prives/nouveau_ws.php | |||
| Permet d'envoyer un nouveau message privé. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur | |||
* ''all_dest'' : les destinataires, séparés pas des point-virgules | |||
* ''sujet'' : le titre du MP | |||
* ''yournewmessage'' : le contenu du MP | |||
* ''tmp'' : le timestamp actuel | |||
* ''control'' : md5("k_ys4+a]x" + idUtilisateur + "j6A=d?6-W*-" + timestamp + "z_.Im") | |||
Il se peut également que vous ayez à gérer un code de confirmation. | |||
|- | |||
| messages-prives/repondre_ws.php | |||
| Permet de répondre à un message privé. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur | |||
* ''id_discussion'' : id de la discussion | |||
* ''yournewmessage'' : le contenu du message | |||
* ''tmp'' : le timestamp actuel | |||
* ''control'' : md5("vx*96-dP" + timestamp + "8e63ddO_" + idUtilisateur + "al)orc9W") | |||
Il se peut également que vous ayez à gérer un code de confirmation. | |||
|- | |||
| messages-prives/suggest_pseudo_ws.php | |||
| Liste quelques pseudos qui commencent par ce que l'utilisateur est en train de taper. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur | |||
* ''search'' : ce que l'utilisateur est en train de taper | |||
|- | |||
| messages-prives/indesirable_ws.php | |||
| Liste les utilisateurs ajoutés en indésirable. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur | |||
|- | |||
| messages-prives/add_indesirable_ws.php | |||
| Permet d'ajouter un utilisateur dans les indésirables. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur actuel | |||
* ''id_user_indesirable'' : id de l'utilisateur à ajouter en indésirable | |||
* ''pseudo_indesirable'' : pseudo de l'utilisateur à ajouter en indésirable | |||
|- | |||
| messages-prives/add_indesirable_ws.php | |||
| Permet d'enlever un utilisateur des indésirables. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur actuel | |||
* ''id_user_indesirable'' : id de l'utilisateur à enlever des indésirables | |||
|- | |||
| messages-prives/info_alerte_ws.php | |||
| Permet de connaître les informations qui permettront de faire une DDB sur un message. Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur qui fait la DDB (par celui qui est DDB) | |||
* ''id_message'' : id du message concerné | |||
|- | |||
| messages-prives/alerte_ws.php | |||
| Permet d'effectuer une DDB (ce qui est inutile, étant donné qu'elles ne sont jamais traitées). Paramètres à envoyer : | |||
* ''id_user'' : id de l'utilisateur qui fait la DDB | |||
* ''pseudo'' : pseudo de l'utilisateur | |||
* ''motif'' : le motif, par exemple ''Piratage'' (les mêmes motifs que dans les MP sur JVC normal) | |||
* ''id_message'' : id du message concerné | |||
* ''id_discussion'' : id de la discussion concernée | |||
* ''time_alerte'' : timestamp actuel | |||
* ''key_alerte'' : md5("v6dE{" + idDiscussion + "d96/" + idMessage + "mvn85Qa" + timestamp + "auxarmeheuuuuuuu") | |||
|} | |||
== Reverse-engineering == | == Reverse-engineering == |
Version du 2 avril 2013 à 02:54
L'API de Jeuxvideo.com, utilisée à l'origine par les applications mobiles de Jeuxvideo.com, permet de développer plus facilement des applications, sites web, et autres scripts en rapport avec Jeuxvideo.com.
Elle est au format XML, ce qui fait qu'elle est plus facile à parser, mais aussi plus rapide à charger qu'une page web normale.
Identification
L'API utilise le nom de domaine ws.jeuxvideo.com. Pour y accéder, il faut utiliser un des identifiants ci-dessous (authentification HTTP basique).
Attention, ces identifiants peuvent changer à tout moment (c'est déjà arrivé).
Utilisateur | Mot de passe | |
---|---|---|
Android | app_and_gnw | FC?4554? |
iPhone | app_ios_nw | W!P45-R |
Utilisation
Connexion
Pour vous connecter, utilisez la page mon_compte/connexion.php.
Voici les paramètres à envoyer (GET ou POST) :
Paramètre | Valeur |
---|---|
newnom | Le pseudo de l'utilisateur. |
stamp | Le timestamp (le nombre de secondes depuis le 1er janvier 1970) à l'heure où la requête est envoyée. |
hash | Un hash MD5 sous la forme : md5(pseudo + motDePasse + "OpX234" + stamp) OpX234 est un salt. |
NOTE : à l'heure où j'écris cet article, il est impossible de se connecter avec l'application Android, et donc depuis l'API. Le problème devrait être réglé bientôt.
Pour le renvoi de mot de passe, utilisez cette URL (en remplaçant Cisla par le pseudo ou bien l'adresse e-mail) :
http://ws.jeuxvideo.com/cgi-bin/passperdu_ws.cgi?email_pseudo=Cisla
Jeux, astuces, news...
URL | Description |
---|---|
00.machines_version.xml | Dernière version de l'application et liste des consoles |
01.flux_jeux_nouveautes.xml 01.flux_jeux_prochainement.xml |
Listes de jeux |
01.jeux/21963.xml 01.jeux/details/21963.xml 01.jeux/videos/21963.xml 01.jeux/screen/21963.xml 03.preview/43689.xml 03.test_complet/9813.xml 01.jeux/news/21963.xml 05.jeu_astuce/41030.xml 05.astuce/33258.xml |
Informations sur le jeu (le nombre correspond à l'id) |
03.dossier/18270.xml 03.dossier/18270/1.xml |
Un dossier : 18270 est l'id du dossier, 1 est la page (si vous n'en mettez pas, vous avez le sommaire) |
02.flux_news.xml 02.flux_news-4.xml |
La liste des dernières news. Dans le deuxième exemple, en ajoutant le nombre 4, vous retournez 4 jours en arrière (ça peut aller jusqu'à 9) |
03.flux_articles_tests.xml 03.flux_articles_tests-4.xml 03.flux_articles_apercus.xml 03.flux_articles_apercus-4.xml 03.flux_articles_dossier.xml 03.flux_articles_dossier-4.xml 04.flux_videos_cliq.xml 04.flux_videos_cliq-4.xml 04.flux_videos_gaming.xml 04.flux_videos_gaming-4.xml 04.flux_videos_autres.xml 04.flux_videos_autres-4.xml 05.flux_astuces.xml 05.flux_astuces-4.xml |
Même chose pour les derniers articles, tests, astuces et aperçus |
02.news_screen/1234.xml | Voir les screenshots associés à une news |
ean.php?ean=0045496830144 | Voir le jeu associé au code-barre (EAN) 0045496830144 |
forums_index.xml | Liste des forums généraux |
search_n/mario search/mario search_sug/mario search_forums/mario search_forums_sug/mario |
Effectuer une recherche dans le nom des jeux ou des forums |
Forums
Pour les forums, les URL sont les mêmes que pour JVC, à part que :
- Le .htm est transformé en .xml
- Le www.jeuxvideo.com est remplacé par un ws.jeuxvideo.com
- La chaîne de caractère à la fin de l'URL (comme blabla-15-18-ans ou nom-du-topic) est remplacée par un 0 (sauf pour la recherche).
Par exemple :
http://www.jeuxvideo.com/forums/0-50-0-1-0-1-0-blabla-15-18-ans.htm
Devient :
http://ws.jeuxvideo.com/forums/0-50-0-1-0-1-0-0.xml
Exemples d'URL :
URL | Description |
---|---|
http://ws.jeuxvideo.com/forums/0-50-0-1-0-1-0-0.xml | La liste des sujets |
http://ws.jeuxvideo.com/forums/0-50-0-1-0-1-2-cactus.xml | Rechercher « cactus » dans le titre des topics |
http://ws.jeuxvideo.com/forums/1-50-88795466-1-0-1-0-0.xml | Un topic |
http://ws.jeuxvideo.com/forums/2-50-0-1-0-1-0-0.xml | Formulaire pour créer un topic |
http://ws.jeuxvideo.com/forums/3-50-88795466-1-0-1-0-0.xml | 10 derniers messages d'un topic + formulaire |
http://ws.jeuxvideo.com/forums/5-50-88795466-1-0-1-0-0.xml | Formulaire de réponse à un topic |
http://ws.jeuxvideo.com/cgi-bin/jvforums/forums.cgi | Envoi d'un message (avec les données POST) |
Aux données de formulaires qui vous sont communiquées, vous devez ajouter (comme sur JVC normal) le paramètre yournewmessage pour le message et newsujet pour le titre du topic (si vous créez un nouveau topic). Même chose pour les captchas.
Vous devez être connecté (envoyer le cookie wenvjgol) pour récupérer et envoyer un formulaire.
Le même formulaire peut aussi bien être envoyé au forums.cgi de ws.jeuxvideo.com qu'à celui de www.jeuxvideo.com, ce qui vous permet de choisir entre apparaître « via mobile » ou non.
Messages privés
L'id de l'utilisateur mentionnée ci-dessous correspond à la partie du cookie wenvjgol qui se trouve avant le premier "$".
Une fois connecté, vous devez envoyer le cookie wenvjgol à chaque requête.
URL | Description |
---|---|
messages-prives/connexion_ws.php | Les paramètres sont les mêmes que pour la connexion depuis mon_compte/connexion.php, décrite plus haut. Cependant, la réponse XML contient quelques informations supplémentaires à propos des MP. |
messages-prives/boite-reception_ws.php | Cette requête permet de récupérer quelques informations, comme le nombre de messages non-lus. Paramètres à envoyer :
|
messages-prives/boite-reception_ws.php | Permet de connaître le contenu de la boîte de réception. Paramètre à envoyer :
|
messages-prives/message_ws.php | Permet de lire le contenu d'un message privé. Paramètres à envoyer :
|
messages-prives/nouveau_ws.php | Permet d'envoyer un nouveau message privé. Paramètres à envoyer :
Il se peut également que vous ayez à gérer un code de confirmation. |
messages-prives/repondre_ws.php | Permet de répondre à un message privé. Paramètres à envoyer :
Il se peut également que vous ayez à gérer un code de confirmation. |
messages-prives/suggest_pseudo_ws.php | Liste quelques pseudos qui commencent par ce que l'utilisateur est en train de taper. Paramètres à envoyer :
|
messages-prives/indesirable_ws.php | Liste les utilisateurs ajoutés en indésirable. Paramètres à envoyer :
|
messages-prives/add_indesirable_ws.php | Permet d'ajouter un utilisateur dans les indésirables. Paramètres à envoyer :
|
messages-prives/add_indesirable_ws.php | Permet d'enlever un utilisateur des indésirables. Paramètres à envoyer :
|
messages-prives/info_alerte_ws.php | Permet de connaître les informations qui permettront de faire une DDB sur un message. Paramètres à envoyer :
|
messages-prives/alerte_ws.php | Permet d'effectuer une DDB (ce qui est inutile, étant donné qu'elles ne sont jamais traitées). Paramètres à envoyer :
|
Reverse-engineering
Cet article est en cours de rédaction, ces informations seront ajoutées plus tard.