java、python、golang等开发语言如何快速生成二维码?

本文介绍了如何使用Java、Python等编程语言生成二维码,推荐了谷歌的ZXing库和Python的myqr、qrcode库,并提出通过调用API来简化生成过程。特别推荐了一个来自“小葱计算”的免费二维码生成API,该API允许高度定制,如添加logo、调整颜色和尺寸等。
摘要由CSDN通过智能技术生成

免费二维码生成途径非常多!比如比较有名的草料二维码,如果只是简单的使用,用它就足够了。但是如果想大规模的生成,那就不太合适了。再者很多工具都没办法在二维码中加入logo(像微信二维码一样)。

接下来,我就说说如何快速的、高质量的生成一个可高度定制的二维码。

二维码的编码算法是公开的,这就意味着大部分的开发语言都可以动图生成。但是在二维码应用如此广泛的今天,还自己去造轮子,如果不是傻,那就是正真的技术极客了。

Java有开源的二维码生成库:com.google.zxing,这是谷歌大佬为android开源的,这个库不可谓不强大,但是坑的一逼,谁用谁知道呀
python是出了名的第三方库多,二维码生成怎么少得了它。比如:myqr、qrcode等
其它语言不熟悉,不做讨论…

我既然说的是任何开发语言都能生成二维码,除开每种语言独立实现外。还有一种方案,那就是调用现成的API去生成二维码。对于想简单使用、想控制开发成本或者是使用一些小众语言的场合,使用API不失为一种好策略。

下面我推荐一个二维码免费生成的API,来自“小葱计算
详细说明文档:https://www.xiaocongjisuan.com/show/api/14

API传参注意事项:

  • appKey:接口唯一标识,在用户后台->应用中心->我的接口查看
  • openId:平台id,注册后系统自动生成,在用户后台->用户中心->账户信息查看

为啥推荐这个接口呢?因为只有它生成的二维码是可以高度定制的,比如:logo、二维码的颜色、二维码的背景颜色、二维码的尺寸,边距等等,详细设置如下图所示:
在这里插入图片描述
还有一些返回值的说明,具体参照上面的api说明文档吧!接下来,我就贴一下一些常用开发语言的使用DEMO。

java版本:

package com.xiaocongjisuan.module.example;

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;

public class Application {
   
	
	 public static final String DEF_CHATSET = "UTF-8";
	 public static final int DEF_CONN_TIMEOUT = 30000;
	 public static final int DEF_READ_TIMEOUT = 30000;
	 public static String userAgent =  "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";
	 
	 //配置您申请的appKey和openId
	 public static final String APP_KEY ="yours";
	 public static final String OPEN_ID ="yours";
	 
	 //将map型转为请求参数型
     public static String urlEncode(Map<String,Object> params) {
   
        
    	if(params==null){
   return "";};
    	 
    	StringBuilder sb = new StringBuilder();
        for (Map.Entry<String,Object> i : params.entrySet()) {
   
            try {
   
                sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");
            } catch (UnsupportedEncodingException e) {
   
                e.printStackTrace();
            }
        }
        String r=sb.toString();
        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值