nodejsのシミュレーション登録
3242 ワード
最近nodejs開発マニュアルという本を読みました.nodejs.org公式サイトのアプリを参照して、アナログ登録プログラムを書きました.その中に北郵人フォーラムがあります.163メールがあります.前者はポストだけでいいです.明文伝送なので、httpsも使いません.後者はhttpsを選択しました.摘出分析によって、下記の手順を書きました.また、Nodejsを通じてweb開発を勉強しました.nodejsは本当に強大で、サーバー側の開発をする利器です.
北郵便者登録の手順:
登録に成功したら、捕まえたクッキーとジャンプするurlを通じて、クッキーヘッダ情報を印刷します.
北郵便者登録の手順:
//**** -----
//
var http=require("http");
var querystring=require("querystring");
var contents=querystring.stringify({
CookieDate:0,
id:"****",
mode:0,
passwd:"-----"
});
var options={
host:"bbs.byr.cn",
path:"/user/ajax_login.json",
method:"post",
headers:{
"Content-Type":"application/x-www-form-urlencoded; charset=UTF-8",
"Content-Length":contents.length,
"Accept":"application/json, text/javascript, */*; q=0.01",
"Accept-Language":"zh-cn",
"Cache-Control":"no-cache",
"Connection":"Keep-Alive",
· "Host":"bbs.byr.cn",
"Referer":"http://bbs.byr.cn/index",
"User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; BOIE9;ZHCN)",
"X-Requested-With":"XMLHttpRequest"
}
};
var req=http.request(options,function(res){
res.setEncoding("utf8");
res.on("data",function(data){
console.log(data);
});
});
req.write(contents);
req.end();
163メールボックスに登録するプログラム:登録に成功したら、捕まえたクッキーとジャンプするurlを通じて、クッキーヘッダ情報を印刷します.
// : *******
// :------
var https=require("https");
var querystring=require("querystring");
var url="https://ssl.mail.163.com/entry/coremail/fcg/ntesdoor2?"+
"df=webmail163&from=web&funcid=loginone&iframe=1&language=-1&net=c&passtype=1&product=mail163&race=-2_60_-2_hz&style=-1&uid=*******@163.com";
var contents=querystring.stringify({
savelogin:1,
password:"------",
url2:"http://mail.163.com/errorpage/err_163.htm",
username:"*******"
});
var options={
host:"ssl.mail.163.com",
path:"/entry/coremail/fcg/ntesdoor2?df=webmail163&from=web&funcid=loginone&iframe=1&language=-1&net=c&passtype=1&product=mail163&race=-2_60_-2_hz&style=-1&uid=******@163.com",
method:"post",
headers:{
"Content-Type":"application/x-www-form-urlencoded",
"Content-Length":contents.length,
"Accept":"text/html, application/xhtml+xml, */*",
"Accept-Language":"zh-CN",
"Cache-Control":"no-cache",
"Connection":"Keep-Alive",
"Host":"ssl.mail.163.com",
"Referer":"http://mail.163.com/",
"User-Agent":"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; BOIE9;ZHCN)"
}
};
var req=https.request(options,function(res){
res.setEncoding("utf8");
var headers=res.headers;
//console.log(headers);
var cookies=headers["set-cookie"];
cookies.forEach(function(cookie){
console.log(cookie);
});
res.on("data",function(data){
console.log(data);
});
});
req.write(contents);
req.end();