web-dev-qa-db-fra.com

Comment obtenir un jeton d'utilisateur permanent pour les écritures à l'aide de l'API Trello?

J'essaie d'écrire une application qui met à jour mes cartes Trello avec l'API. Comment puis-je obtenir un jeton d'utilisateur permanent pour que l'application écrive sur mon tableau Trello?

Merci

34
Kar

Vous pouvez le faire de deux manières:

Dirigez l'utilisateur à l'adresse ci-dessous. Cela dirigera l'utilisateur vers une page comportant un jeton qu'elle peut copier et coller pour vous. Le bit important est que vous demandez pour expiration = never et scope = read,write

https://trello.com/1/authorize?key=substitutewithyourapplicationkey&scope=read%2Cwrite&name=My+Application&expiration=never&response_type=token

Ou utilisez OAuth (plus difficile) pour automatiser la demande d'un jeton d'accès. Plus d'informations dans la documentation .

Une fois que vous avez le jeton, vous pouvez effectuer tout appel d’API souhaité. 

55
Andy Jones

Si vous devez tout faire côté serveur, Andy Jones a raison, ce sont les deux seules façons. 

Il convient toutefois de noter que si vous pouvez écrire du code javascript + jquery plutôt que de devoir effectuer les redirections côté serveur, vous pouvez tirer parti du wrapper client.js de Trello, qui fait exactement ce que Andy a décrit, mais s'occupe de la plupart pour vous, ce qui est bien pratique. 

Et, comme je l’ai récemment découvert, si vous devez traiter le serveur, vous pouvez toujours utiliser client.js, puis récupérez le jeton avec Trello.token () dans votre gestionnaire de réussite d’authentification, puis transmettez-le à votre serveur. code de côté. Cela ressemble à ceci: 

// include whatever version of jquery you want to use first
<script src="https://api.trello.com/1/client.js?key=[your application key]" type="text/javascript"></script>

// call this whenever you want to make sure Trello is authenticated, and get a key. 
// I don't call it until the user needs to Push something to Trello,
// but you could call it in document.ready if that made more sense in your case.
function AuthenticateTrello() {
        Trello.authorize({
            name: "your project name",
            type: "popup",
            interactive: true,
            expiration: "never",
            success: function () { onAuthorizeSuccessful(); },
            error: function () { onFailedAuthorization(); },
            scope: { write: true, read: true },
        });
 }

function onAuthorizeSuccessful() {
    var token = Trello.token();
    // whatever you want to do with your token. 
    // if you can do everything client-side, there are other wrapper functions
    // so you never need to use the token directly if you don't want to.
}

function onFailedAuthorization() {
    // whatever
}
11
neminem

Si vous n'avez besoin que d'un jeton pour votre usage personnel, vous pouvez obtenir app-key, secret et token en fonction de votre connexion via ici .

0
Karl Pokus