2014-05-25 80 views
1

我使用npm REQUEST進行簡單的http調用。對於哈希需求的含義,至少對我來說是不明確的(至少對我而言)。從the documentation我知道我需要做一個鏈接函數調用:node.js REQUEST認證哈希

request.get('http://some.server.com/').auth('username', 'password', false); 

小字說:「...如果作爲一個選項傳遞,權威性應該是包含值的用戶名,密碼的哈希......」

有人可以好好解釋哈希過程嗎?是這樣的嗎?

cypto.createHash('md5').update('fake_username').digest('hex') 

這是我在nodejs中工作的完整代碼示例。我得到一個401錯誤

var request = require('request') 
var cypto = require('crypto') 

var unhash = cypto.createHash('md5').update('fake_username').digest('hex') 
var pwhash = cypto.createHash('md5').update('fake_password').digest('hex') 

request.get('<URL HERE>', function (error, response, body) { 
    if (!error && response.statusCode == 200) { 
     console.log(body) 
    } 
    else { 
     console.log('Response code: ', response.statusCode) 
    } 
}).auth(unhash,pwhash,false) 

回答

0

If passed as an option, auth should be a hash containing values username, password部分指的是第二個實施例中的自述:

request.get('http://some.server.com/', { 
    'auth': { 
    'user': 'username', 
    'pass': 'password', 
    'sendImmediately': false 
    } 
}); 

這裏散列「的意思是「對象」。它與加密哈希無關。