2017-08-28 5 views
1

私は、作成中のカスタムビルドタスクでvsts-node-apiパッケージを使用しようとしていて、オンサイトのtfs2017で使用しようとしています。 githubリポジトリにあるサンプルコードの一部を活用していますが、無効なリソースのエラーが返されています。 VSCodeでいくつかのデバッグを行い、デバッグログを残りのコードに追加すると、残りの呼び出しが401を返すことがわかります。エラーはWebApiを取得して接続しようとした後に発生します。なぜvsts-node-apiは常にInvalid Resource - 401を返しますか?

私はPATハンドラとNtlmHandlerを使用しようとしましたが、運はありません。ブラウザからURIをヒットした場合、JSONが返されます。何か助けがあれば幸いです。

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); 
     } 
    }); 

おかげ

答えて

0

this response from the VSTFS teamが進むべき道であるように見えます。

TLDR; ビルドごとにベアラOAuthトークンを生成し、VSTSにトークバックします。

関連する問題