nodejs實現HTTPS發起POST請求:
准備用nodejs搞一個快速注冊163郵箱的東西,需要在某一步的時候post數據到https,node的官方文檔實在太簡陋了,網上找了個差不多的例子,拿來改了改用。
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 var util = require('util'), https = require('https'); var regUrl = "https://ssl.mail.163.com/regall/unireg/call.do;jsessionid=%s?cmd=register.start&adapter=%s&reforward=common/reform&targetCmd=register.ctrlTop"; var cookie = 'a=b;c=d;', mail = 'regUsername', pass = 'password', vcode='abcde'; var _regUrl = util.format(regUrl, 'id123455', 'param2'); var post_option = url.parse(_regUrl); post_option.method = 'POST'; post_option.port = 443; var post_data = querystring.stringify({ 'name' : mail, 'uid' : mail+'@163.com', 'confirmPassword' : pass, 'password' : pass, 'vcode' : vcode, 'flow' : 'main', 'from' : '163mail_right', 'mobile' : '', }); post_option.headers = { 'Content-Type' : 'application/x-www-form-urlencoded', 'Content-Length' : post_data.length, Cookie : cookie }; var post_req = https.request(post_option, function(res){ res.on('data', function(buffer){ console.log(buffer.toString()); }); post_req.write(post_data); post_req.end();以上所述就是本文的全部內容了,希望大家能夠喜歡。