Home  >  Article  >  Web Front-end  >  nodejs实现HTTPS发起POST请求_node.js

nodejs实现HTTPS发起POST请求_node.js

WBOY
WBOYOriginal
2016-05-16 16:02:403587browse

准备用nodejs搞一个快速注册163邮箱的东西,需要在某一步的时候post数据到https,node的官方文档实在太简陋了,网上找了个差不多的例子,拿来改了改用。

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();

以上所述就是本文的全部内容了,希望大家能够喜欢。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn