node中https请求 | 实现https的请求,获取图片,然后转成base64字节码

get请求

下面实现https的请求,获取图片,然后转成base64字节码

this.checkCodeUrl = ‘https://www.test.com/kaptcha.jsp‘;
var https = require(‘https‘);
https.get(this.checkCodeUrl,function(res){
        var datas = [];
        var size = 0;
        res.on(‘data‘, function(data){
            datas.push(data);
            size += data.length;
        })
        res.on(‘end‘, function(data){
            var buff = Buffer.concat(datas, size);
            var pic = buff.toString(‘base64‘);
            callback({success:true, data:pic});
        })
    }).on(‘error‘,function(err){
        console.log(‘获取验证码异常,异常原因‘+err);
        callback({success:false, msg:‘获取验证码失败‘});
    })

2 post请求 
我这里因为返回的字符是gbk,所以做了对应处理。

var https = require(‘https‘);
var iconv = require(‘iconv-lite‘);
var querystring = require("querystring");
var reqData = {
            str1:‘11‘,
            str2:‘22‘
        }
        var postData = querystring.stringify(reqData);
        var opts = {
            method:‘POST‘,
            host:‘www.test.com‘,
            port:‘443‘,
            path:‘/api/test‘,
            headers:{
                ‘Content-Type‘:‘application/x-www-form-urlencoded‘,
                ‘Content-Length‘:postData.length
            }
        }
        var req = https.request(opts,function(res){
            var datas = [];
            var size = 0;
            res.on(‘data‘,function(data){
                datas.push(data);
                size += data.length;
            })
            res.on(‘end‘, function(){
                var buff = Buffer.concat(datas, size);
                var str = iconv.decode(buff,‘gbk‘);
                callback({success:true, data:str});
            })
        })
        req.on(‘error‘,function(err){
            console.log(‘异常,异常原因‘+err);
            callback({success:false, msg:‘失败‘});
        })
        req.write(postData);

原文地址:https://www.cnblogs.com/liujinyu/p/8653797.html

时间: 2024-07-29 02:20:22

node中https请求 | 实现https的请求,获取图片,然后转成base64字节码的相关文章

在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求

通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中发送GET/HTTP/HTTPS请求,因为有的时候需要获取认证信息(如Cookie),所以返回的是HttpWebResponse对象,有了返回的HttpWebResponse实例,可以获取登录过程中返回的会话信息,也可以获取响应流. 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Text;

【转】在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求

http://zhoufoxcn.blog.51cto.com/792419/561934 这个需求来自于我最近练手的一个项目,在项目中我需要将一些自己发表的和收藏整理的网文集中到一个地方存放,如果全部采用手工操作工作量大而且繁琐,因此周公决定利用C#来实现.在很多地方都需要验证用户身份才可以进行下一步操作,这就免不了POST请求来登录,在实际过程中发现有些网站登录是HTTPS形式的,在解决过程中遇到了一些小问题,现在跟大家分享. 通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpW

(转) 在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求

转自:http://blog.csdn.net/zhoufoxcn/article/details/6404236 通用辅助类 下面是我编写的一个辅助类,在这个类中采用了HttpWebRequest中发送GET/HTTP/HTTPS请求,因为有的时候需要获取认证信息(如Cookie),所以返回的是HttpWebResponse对象,有了返回的HttpWebResponse实例,可以获取登录过程中返回的会话信息,也可以获取响应流. 代码如下: [c-sharp] view plaincopy us

(转载)在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求

转自http://blog.csdn.net/zhoufoxcn/article/details/6404236 这个需求来自于我最近练手的一个项目,在项目中我需要将一些自己发表的和收藏整理的网文集中到一个地方存放,如果全部采用手工操作工作量大而且繁琐,因此周公决定利用C#来实现.在很多地方都需要验证用户身份才可以进行下一步操作,这就免不了POST请求来登录,在实际过程中发现有些网站登录是HTTPS形式的,在解决过程中遇到了一些小问题,现在跟大家分享. 通用辅助类 下面是我编写的一个辅助类,在这

在C#用HttpWebRequest中发送GET/HTTP/HTTPS请求【转载】

标签:C# HTTPS HttpWebRequest HTTP HttpWebResponse 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://zhoufoxcn.blog.51cto.com/792419/561934 这个需求来自于我最近练手的一个项目,在项目中我需要将一些自己发表的和收藏整理的网文集中到一个地方存放,如果全部采用手工操作工作量大而且繁琐,因此周公决定利用C#来实现.在很多地方都需要验证用户身份才可以进行下

http请求头中的Content-Type属性在angular 和 node中的用法

post请求的请求体有以下两种格式: 1. 字符串: 'name=code_bunny&age=12' 这种格式的请求体,需要配置请求头 'Content-Type':'application/x-www-form-urlencoded' 2. json: {name:'code_bunny',age:12} 这种格式的请求体,需要配置请求头 'Content-Type':'application/json;charset=UTF-8' 注意: 请求体格式和请求头的Content-Type类型必

SPRING IN ACTION 第4版笔记-第九章Securing web applications-011-把敏感信息请求转为https(requiresChannel())

1.把包含敏感信息的请求转为https请求,则较为安全,但如何只把有需要安全的请求转为https,而不是不加分辩就把所有请求都转为https呢?可以用requiresChannel() 1 @Override 2 protected void configure(HttpSecurity http) throws Exception { 3 http 4 .authorizeRequests() 5 .antMatchers("/spitter/me").hasRole("S

ngxin做http强制跳转https,接口的POST请求变成了GET

公司准备将 http 换成 https,就需要 http 强制跳转到 https.这个在网上搜了下,基本总结下 在 server 里面配置 rewrite ^(.*)$  https://$host$1 permanent; 或者在server里面配置 return 301 https://$server_name$request_uri; 或者在server里面配 if,这里指的是需要配置多个域名 if ($host ~* "^wangshibo.com$") {     rewri

在线HTTP POST/GET模拟请求api接口http请求测试工具https://post.jsonin.com/

在线HTTP POST/GET模拟请求api接口http请求测试工具 在线POST/GET接口测试工具https://post.jsonin.com/ Json在线解析及格式化校验工具 https://jsonin.com/ 原文地址:https://www.cnblogs.com/daxiangxm/p/postjson.html