Closed aesteve closed 6 years ago
Effectivement, page
est dans la clé et sans doute pas page_size
.
D'ailleurs je comprends pas bien comment fonctionne le cache.
https://github.com/zestedesavoir/zds-site/blob/dev/zds/member/api/views.py#L38-L40
Le bearer est un paramètre implicite à toute mise en cache ?
Parce que (j'ai pas encore essayé) mais si je fais GetMyDetails pour un utilisateur, puis pour un second utilisateur dans un interval de temps relativement court, faudrait pas qu'il me renvoie les infos du premier.
T'aurais une doc @GerardPaligot que je puisse consulter ? Merci :)
Tu trouveras ton bonheur ici : http://chibisov.github.io/drf-extensions/docs/.
Le bearer est un paramètre implicite à toute mise en cache ? Parce que (j'ai pas encore essayé) mais si je fais GetMyDetails pour un utilisateur, puis pour un second utilisateur dans un interval de temps relativement court, faudrait pas qu'il me renvoie les infos du premier.
Ooooh ... ça expliquerait un problème récent que j'ai eu avec un projet basé sur l'API.
Je ferme, https://zestedesavoir.com/api/membres/?page_size=100&page=2 retournant bien 100 résultats :)
Reproducer :
GET
/api/membres?page=2
Retourne 10 résultats
Puis :
GET
/api/membres/?page_size=100&page=2
Retourne toujours 10 résultats.
D'après @DevHugo ça semblerait être un problème de cache.
Effectivement il faut toujours inclure l'intégralité des paramètres de la requête dans la clef du cache.
(et éventuellement certains headers qui peuvent changer la tronche de la réponse)