Stavo appena facendo alcuni test con l’endpoint “ottenere l’elenco pubblico degli utenti” e ho dovuto gestire la paginazione per recuperare gli utenti rimanenti. Ho utilizzato il campo load_more_directory_items per ottenere il percorso della pagina successiva, che era indicato come /directory_items?order=days_visited&page=1&period=all
Tuttavia, utilizzando questo percorso, non ho ricevuto una risposta API corretta con gli utenti, ma solo del codice HTML. Confrontandolo con l’endpoint originale, sembra che manchi l’estensione .json dopo directory_items. Aggiungendo .json al percorso della pagina successiva, sembra che tutto funzioni correttamente. Potrebbe essere un bug dell’API?
Quando utilizzi l’API, usa sempre .json per tutte le richieste API, perché sebbene la maggior parte degli endpoint restituisca JSON di default, alcuni restituiscono HTML. Sembra che questa rotta non abbia un default, quindi quando non è stato passato .json, la rotta non è stata trovata.
Dovresti davvero specificare .json per evitare questa pagina di errore, ma mi chiedo: se rileviamo una chiamata API, dovremmo restituire una vera risposta HTTP 404 invece di un 200 con un corpo HTML illeggibile? ?
Giusto, con l’endpoint nella chiamata API iniziale sto specificando .json. Il problema che ho notato è che nella risposta, load_more_directory_items sotto meta non specifica .json.