Je sais que pour chaque rapport d’administrateur, il existe une API .json pour récupérer les données. Le rapport qui m’intéresse est topics_with_no_response et j’ai pu filtrer par catégorie via https://xxx.com/admin/reports/topics_with_no_response?end_date=2023-06-16&filters=%7B%22category%22%3A7%2C%22include_subcategories%22%3Atrue%7D&mode=table&start_date=2023-06-14. Cependant, si je passe au point de terminaison json via https://xxx.com/admin/reports/topics_with_no_response.json?end_date=2023-06-16&filters=%7B%22category%22%3A7%2C%22include_subcategories%22%3Atrue%7D&mode=table&start_date=2023-06-14, il ne renvoie pas les données.
Avons-nous une syntaxe différente pour interroger ces deux points de terminaison ?
Pourriez-vous me donner un exemple de la requête POST ? Quel devrait être le corps ? J’ai essayé de simplement changer GET en POST avec la même URL, mais cela ne semble pas fonctionner.
Lorsque je suis passé à POST et que j’ai transmis tous les paramètres de requête comme données POST, j’ai obtenu un message « Page introuvable ». Cependant, j’ai pu utiliser POST pour exécuter des requêtes d’explorateur de données. Avez-vous des idées ? Merci !
Jetez un coup d’œil à Ingénierie inverse de l’API Discourse. Lorsque j’essaie cette approche pour le rapport « Sujets sans réponse », je vois qu’il effectue des requêtes GET similaires à :
Vous pouvez obtenir les paramètres de requête encodés dans l’onglet Réseau de l’inspecteur de votre navigateur. Avec cette URL, vous devriez pouvoir faire quelque chose comme :
Vous devrez définir api_key sur une clé API globale pour tous les utilisateurs - je ne pense pas qu’il existe de portée spécifique qui puisse être utilisée pour les rapports.
Notez que vous devez ajouter l’extension json à l’URL (http://localhost:4200/admin/reports/bulk.json)