2017-06-28 41 views
0

保護我一直在嘗試配置NPM連接到一個私人註冊(的Nexus)私人註冊表。 不幸的是,nexus安裝受Webseal保護。 我已經設置了註冊表中的NPM配置,當我做了NPM登錄我得到以下配置NPM訪問受WebSEAL

npm ERR! registry error parsing json 
npm WARN adduser Incorrect username or password 
npm WARN adduser You can reset your account by visiting: 
npm WARN adduser 
npm WARN adduser  https://npmjs.org/forgot 
npm WARN adduser 
npm ERR! Unexpected token < in JSON at position 0 
npm ERR! <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> 
npm ERR! <!-- Copyright (C) 2000 Tivoli Systems, Inc. --> 
npm ERR! <!-- Copyright (C) 1999 IBM Corporation --> 
npm ERR! <!-- Copyright (C) 1998 Dascom, Inc. --> 
npm ERR! <!-- All Rights Reserved. --> 
npm ERR! <!-- 
npm ERR!  This is a WebSEAL error message template file. It is used 
npm ERR!  by the WebSEAL server to build a response when a particular 
npm ERR!  error occurs. This file can be modified as appropriate. 
npm ERR! 
npm ERR!  Error details: 
npm ERR! 
npm ERR!  * Code: 0x38cf0425 
npm ERR!  * Text: Unauthorized 
npm ERR! 
npm ERR! --> 
npm ERR! <html> 
npm ERR! <head> 
npm ERR! <meta http-equiv="Content-Type" content= "text/html; charset=UTF-8"> 
npm ERR! <!-- Enter Page Title --> 
npm ERR! <title>Login Required</title> 
npm ERR! </head> 
npm ERR! <body bgcolor="#FFFFFF"> 
npm ERR! 
npm ERR! <!-- Enter Message Header --> 
npm ERR! <h1><font color="#FF0000">Login Required</font></h1> 
npm ERR! 
npm ERR! <p><!-- Enter Error Message --> 
npm ERR! You must login before you can access the resource you have requested. 
npm ERR! 
npm ERR! <BR><BR><BR> 
npm ERR! 
npm ERR! <!-- Provide Error Explanation --> 
npm ERR! <H4>Explanation</H4> 
npm ERR! <P>The resource you have requested is secured by Access Manager WebSEAL, and in 
npm ERR! order to access it, you must first login. 
npm ERR! </P> 
npm ERR! 
npm ERR! <BR><BR><BR> 
npm ERR! 
npm ERR! <!-- Provide Possible Solution --> 
npm ERR! <H4>Solutions</H4> 
npm ERR! <P>Log in with a valid account. 
npm ERR! </P> 
npm ERR! 
npm ERR! <br> 
npm ERR! <br> 
npm ERR! <br> 
npm ERR! <!-- Enter Link --> 
npm ERR! <a href="/">[BACK BUTTON]</a></p> 
npm ERR! </body> 
npm ERR! </html> 
npm ERR! 
npm ERR! 

我沒有使用webseal的用戶名和密碼。

回答

0

好的。這至少是部分答案。 需要使用代理設置的webpack dev服務器。 這裏是一個webpack.config.js的片段..

// If you have to go though a corperate proxy the following is needed. 
var HttpsProxyAgent = require('https-proxy-agent'); 
// corporate proxy to connect to 
var proxyServer = 'http://<proxyserver>:<proxyport/'; 
var proxyAgent = new HttpsProxyAgent(proxyServer); 

// Webseal auth, must be in the form of <devUser>:<devPassword> 
// I know that having an unencrypted password is HORRIBLE!!! 
// Working on something better 
var auth = '<websealuser>:<websealpassword'; 

proxy: { 
    '/nexus/**': { 
    target: 'https://<target>/', 
    secure: false, 
    'changeOrigin': true, 
    'auth': auth, 
    // Comment out the following line if not going through a corperate proxy 
    agent: proxyAgent, 
    logLevel: 'debug', 
    toProxy: true 

}

然後你必須設置NPM的註冊表值設置爲localhost:8080(或任何值的WebPack開發服務器將從服務。

我還建議以嚴格的SSL設置爲false。

啓動的WebPack開發服務器,並嘗試NPM install命令。它應該請求代理到私人倉庫。

我目前有一個超時問題,實際上得到的tarball下載,但我看到元數據遇到。