File tree Expand file tree Collapse file tree 2 files changed +42
-4
lines changed
hadoop-hdfs-rbf/src/main/webapps/router
hadoop-hdfs/src/main/webapps/hdfs Expand file tree Collapse file tree 2 files changed +42
-4
lines changed Original file line number Diff line number Diff line change 278278 for ( var i = 0 , e = nodes . length ; i < e ; ++ i ) {
279279 var n = nodes [ i ] ;
280280 n . usedPercentage = Math . round ( ( n . used + n . nonDfsUsedSpace ) * 1.0 / n . capacity * 100 ) ;
281- var port = n . infoAddr . split ( ":" ) [ 1 ] ;
282- var securePort = n . infoSecureAddr . split ( ":" ) [ 1 ] ;
281+ // 处理IPv6地址的infoAddr
282+ var infoAddrParts = n . infoAddr . split ( "]:" ) ;
283+ var port = "50075" ;
283284 var dnHost = n . name . split ( ":" ) [ 0 ] ;
285+ if ( infoAddrParts . length > 1 ) {
286+ // IPv6地址格式 [xxxx:xxxx:...]:port
287+ port = infoAddrParts [ 1 ] ;
288+ } else {
289+ // IPv4地址格式 host:port
290+ var parts = n . infoAddr . split ( ":" ) ;
291+ port = parts [ 1 ] ;
292+ }
293+ // 同样方式处理安全端口
294+ var securePort = "0" ;
295+ if ( n . infoSecureAddr ) {
296+ var secureAddrParts = n . infoSecureAddr . split ( "]:" ) ;
297+ if ( secureAddrParts . length > 1 ) {
298+ securePort = secureAddrParts [ 1 ] ;
299+ } else {
300+ securePort = n . infoSecureAddr . split ( ":" ) [ 1 ] ;
301+ }
302+ }
284303 n . dnWebAddress = "http://" + dnHost + ":" + port ;
285304 if ( securePort != 0 ) {
286305 n . dnWebAddress = "https://" + dnHost + ":" + securePort ;
Original file line number Diff line number Diff line change 227227 var n = nodes [ i ] ;
228228 n . usedPercentage = Math . round ( ( n . used + n . nonDfsUsedSpace ) * 1.0 / n . capacity * 100 ) ;
229229
230- var port = n . infoAddr . split ( ":" ) [ 1 ] ;
231- var securePort = n . infoSecureAddr . split ( ":" ) [ 1 ] ;
230+ // 处理IPv6地址的infoAddr
231+ var infoAddrParts = n . infoAddr . split ( "]:" ) ;
232+ var port = "50075" ;
232233 var dnHost = n . name . split ( ":" ) [ 0 ] ;
234+ if ( infoAddrParts . length > 1 ) {
235+ // IPv6地址格式 [xxxx:xxxx:...]:port
236+ port = infoAddrParts [ 1 ] ;
237+ } else {
238+ // IPv4地址格式 host:port
239+ var parts = n . infoAddr . split ( ":" ) ;
240+ port = parts [ 1 ] ;
241+ }
242+ // 同样方式处理安全端口
243+ var securePort = "0" ;
244+ if ( n . infoSecureAddr ) {
245+ var secureAddrParts = n . infoSecureAddr . split ( "]:" ) ;
246+ if ( secureAddrParts . length > 1 ) {
247+ securePort = secureAddrParts [ 1 ] ;
248+ } else {
249+ securePort = n . infoSecureAddr . split ( ":" ) [ 1 ] ;
250+ }
251+ }
233252 n . dnWebAddress = "http://" + dnHost + ":" + port ;
234253 if ( securePort != 0 ) {
235254 n . dnWebAddress = "https://" + dnHost + ":" + securePort ;
You can’t perform that action at this time.
0 commit comments