Personnellement je trouve que 0auth est chiant à installer, de plus l'utilisateur dois passer par un page d'authorisation avec un système de callback, et la clef restera valide même si l'utilisateur change son nom, password.
J'ai préféré développer un système d'authentification,
La première fois que l'utilisateur se connecte l'id et le password sont envoyés au serveur encodé en base 64 ( SSL obligatoire )
On test si l'utilisateur existe, si oui on génère un token qui contient l'identifiant et le mot de passe avec une clé d'encryption.
Quand l'utilisateur veut faire une requête à l'api on envoie le token dans la requête on décrypte le token on vérifie si l'utilisateur existe.
Si on le souhaite on peut rajouter une date de validité comme sur un cookie dans le token.
Pour ma part le token décodé resemble à ceci :
username:password:date
Concernant le stockage du token on utilisera local storage.
Si l'utilisateur veut se déconnecter on supprimera le token du local storage.