Pourquoi est-ce que je reçois une erreur « Jeton de session invalide » dans mon application Shopify lorsque j'effectue une demande ?
P粉0217082752023-12-29 17:55:41
0
1
399
J'essaie de faire une demande depuis mon application Shopify, de publier une méthode sur mon backend qui est laravel et mon frontend vue.js, j'utilise Inertia, je comprends.
Pour clarifier quel est le problème et comment le résoudre, j'ai d'abord pensé que quelqu'un serait confronté au même problème que moi, donc je ne pense pas qu'aucun code soit nécessaire car il s'agit fondamentalement d'une erreur très explicite indiquant que le jeton de session a expiré, que veux-tu d'autre Que veux-tu ?
Cette erreur se produit car Shopify exécute l'application dans un Iframe et le jeton effectuant la demande ne correspond pas, vous devez donc ajouter manuellement le jeton à la demande. Je recommande de toujours obtenir le jeton lors de l'appel de la méthode, car le jeton changera pendant un certain temps à chaque fois. J'ai ajouté quelques exemples de code sur la façon dont je le gère en utilisant Vue.js, Laravel, Inertia.js, Axios
Pour clarifier quel est le problème et comment le résoudre, j'ai d'abord pensé que quelqu'un serait confronté au même problème que moi, donc je ne pense pas qu'aucun code soit nécessaire car il s'agit fondamentalement d'une erreur très explicite indiquant que le jeton de session a expiré, que veux-tu d'autre Que veux-tu ?
Cette erreur se produit car Shopify exécute l'application dans un Iframe et le jeton effectuant la demande ne correspond pas, vous devez donc ajouter manuellement le jeton à la demande. Je recommande de toujours obtenir le jeton lors de l'appel de la méthode, car le jeton changera pendant un certain temps à chaque fois. J'ai ajouté quelques exemples de code sur la façon dont je le gère en utilisant Vue.js, Laravel, Inertia.js, Axios
C'est dans mon app.blade.php, je l'ai trouvé sur le github Osiset, je ne sais pas si c'est la meilleure solution https://github.com/osiset/laravel-shopify/issues/594
Alternativement, vous pouvez désactiver le token csrf (non recommandé)