2 votes

Pourquoi vsts-node-api renvoie-t-il toujours le message Invalid Resource - 401 ?

J'essaie d'utiliser le paquet vsts-node-api dans une tâche de construction personnalisée que j'écris et que j'essaie d'utiliser sur le site tfs2017. J'ai exploité une partie de l'échantillon de code trouvé sur le repo github, et j'ai constaté qu'il renvoie une erreur de ressource non valide. En déboguant un peu dans VSCode et en ajoutant des journaux de débogage au reste du code, j'ai découvert que l'appel au repos renvoie une erreur 401. L'erreur se produit après que j'ai obtenu la WebApi et ensuite essayé de me connecter.

J'ai essayé d'utiliser le PAT Handler et le NtlmHandler, mais sans succès. Si je tape l'URI dans mon navigateur, j'obtiens le JSON renvoyé Toute aide serait très appréciée.

export async function getWebApi(pwd:string): Promise<vm.WebApi> {
    return new Promise<vm.WebApi>(async (resolve, reject) => {
        try {
            console.log("in the common getter");
            let serverUrl = 'https://mylocalserver/tfs/mycollection';
            let token = ' my PAT on the server, that has full access ';
            let authHandler = vm.getPersonalAccessTokenHandler(token);      
            let option = {
            ignoreSslError: true
             };

            let vsts: vm.WebApi = new vm.WebApi(serverUrl, authHandler,options);
            console.log("got web api?");
            let connData: lim.ConnectionData = await vsts.connect();
            console.log('Hello ' + connData.authenticatedUser.providerDisplayName);
            resolve(vsts);
        }
        catch (err) {
            console.log("error in get api " + err.message);
            reject(err);
        }
    });

merci

1voto

Al Dass Points 131

On dirait que cette réponse de l'équipe VSTFS est la voie à suivre.

TLDR ; Générer un jeton OAuth de porteur par construction pour parler en retour à VSTS.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X