2015-05-29 60 views
1

這是我的代碼,這是不需要驗證的,不期望的報廢,任何人都知道這個錯誤,如果有人知道的另一種方式,並可以舉一個例子是appreciate.This代碼再殺到一個網站,需要驗證,我沒有看到該鏈接將如何顯示給我網頁抓取認證節點JS

process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0';// 

var request = require('request'); 
var cheerio = require('cheerio'); 


req = request.defaults({ 
jar: true,     // Guardar las cookies hacia un jar 

}); 
var credentials = { 
username: 'user', 
password: 'pass' 
}; 

req.post({ 
    uri: 'http://www.website.com/', 
    headers: { 'content-type': 'application/x-www-form-urlencoded' }, 
    body: require('querystring').stringify(credentials) 
}, function(err, res, body){ 
if(err) { 
console.log(err); 
return; 
} 

req('http://www.website.com/info', function(err, res,  data) { 
    if(err) { 
     console.log(err); 
     return; 
    } 

    var $ = cheerio.load(data); 
    console.log($.html()); 



}); 

}); 

它只是沒有被授權,因此也報廢所需

+0

沒有什麼重複的,你必須讀得好,是不同的主題 – user3328955

+0

它被稱爲?,你能解釋一下你的想法,這是代碼的順序工作。謝謝 – user3328955

+0

對不起,我誤讀你的代碼。在發佈之前請格式化您的代碼 - 您的縮進非常具有誤導性。 –

回答

0

如何遠程站點持有的認證?您是否記得保存來自認證調用的cookie,然後在需要認證的後續URL中傳遞cookie?

+0

感謝您回覆法案,如果該網站是asp.net認證,並在該行request.defaults REQ =({ 罐子:真實, }); 保持cookie,是正確的方式? – user3328955

+0

在文檔的請求模塊它規定'罐子 - 如果安裝了真正的堅韌,餅乾,記住將來使用Cookie(或定義自定義餅乾罐,見實例部分)'(見https://github.com/請求/請求) – Bill

+0

謝謝比爾,告訴我你測試了這個代碼,你竟然? – user3328955