Quand j'accéder à mon serveur avec les éléments suivants il fonctionne:Accès au serveur Parse dans Android sans clé maître ne donne pas l'autorisation
curl -X POST \
-H "X-Parse-Application-Id: xxx" \
-H "X-Parse-Master-Key: yyy" \
-H "Content-Type: text/plain" \
-d '{"score":1337,"playerName":"Sean Plott","cheatMode":false}' \
http://xx.xx.xx.xx/parse/classes/Inventory
Mais quand j'utilise ce qui suit, il ne fait pas:
curl -X POST \
-H "X-Parse-Application-Id: xxx" \
-H "Content-Type: text/plain" \
-d '{"score":1337,"playerName":"Sean Plott","cheatMode":false}' \
http://xx.xx.xx.xx/parse/classes/Inventory
Je reçois cette erreur à la place:
{"error":"unauthorized"}
cela a fonctionné parfaitement bien plus tôt. J'avais changé quelques paramètres et mis à jour vers la dernière version de Parse Server, puis il a cessé de fonctionner, ainsi que toutes les autres applications liées.
La version Web fonctionne, ce qui suggère que la clé API REST était correcte. Je peux accéder à tout parfaitement à travers le tableau de bord. Le seul problème est quand j'y accède avec Android, qui peut seulement donner un identifiant d'application pour l'identification.
Est-ce que j'ai pu modifier un réglage qui a bloqué cela? Je ne pense pas avoir changé quoi que ce soit, bien qu'il y ait une petite possibilité que je n'ai pas fermé une parenthèse ou commenté quelque chose sur le fichier server.js.
Avez-vous ajouté une clé client à votre index.js peut-être? Lorsque vous initialisez parse-server? Je sais que quand le serveur d'analyse est lancé, ils l'ont rendu facultatif (bien que recommandé). Ce n'est pas considéré comme "secret" car il peut être décompilé depuis votre application, mais vous ne devez absolument pas mettre votre clé principale dans le client mobile. –
Il semble que j'ai supprimé tout clientKey du code, mais le problème est toujours là. – Muz
Je recommanderais d'utiliser la clé du client. Comment votre serveur est-il initialisé? Avec ou sans clé client? Vous montrer expurgé index.js s'il vous plaît. –