本次主要分享的是3个免费的二维码接口的对接代码和测试得出的注意点及区别,有更好处理方式多多交流,相互促进进步;最近在学习JavsScript的扩展TypeScript,感觉语法糖很甜,大部分与C#更为类似,可能都是微软项目的原因吧,有兴趣的朋友可以多多相互交流下; 以上是个人 ...
本次主要分享的是3个免费的二维码接口的对接代码和测试得出的注意点及区别,有更好处理方式多多交流,相互促进进步;最近在学习JavsScript的扩展TypeScript,感觉语法糖很甜,大部分与C#更为类似,可能都是微软项目的原因吧,有兴趣的朋友可以多多相互交流下;
以上是个人的看法,下面来正式分享今天的文章吧:
. Google的Api二维码生成接口
. 2d-code的Api二维码生成接口
. topscan的Api二维码生成接口
. 使用get='_blank'>面向对象+加载程序集创建对象合并以上接口封装成二维码生成工厂
下面一步一个脚印的来分享:
. Google的Api二维码生成接口
首先,这里给出Google接口文档的链接qr_codes文档,热情的朋友马上就会打开此链接吧,详细看下里面的参数这就不做截图了,大致通常用到的参数是:api地址,内容参数,生成图片的高宽这3个参数,其他的几个参数都采用默认的吧,不同需要大家可以更详细的看下;其实第一次看到文档里面的参数,感觉少了一些东西,比如怎么不能传递二维码中间那个图标的图片地址和扫描二维码过后怎么跳转到我想重定向的url链接呢,带着这个疑问我进行了多次的尝试;下面给出自己尝试的结果说明:
1. 接口关键参数是:cht(固定值qr),chl(内容参数),chs(生成出来二维码图片尺寸,格式如:200x200,这里是xyz的x不是*)
2. api接口只会生成一个二维码的图片流,如果需要把图片保存到本地需要通过浏览器直接get访问接口或者通过程序下载这个二维码
3. 内容参数如果传递文本信息,在生成出来的二维码图片中间不会显示文本内容,只有用手机扫描二维码才能在手机上显示传递的文本信息
4. 内容参数如果传递单纯的http://格式的链接地址,那么手机扫描后会自动重定向到改http://链接地址上(这个扫描重定向可以用来做一些商品或者文章的查看)
5. google接口暂未研究出此Logo图标地址参数(希望有朋友研究出来后与我分享,谢谢)
6. 由于api地址是国外的,调用接口响应不是那么快速
其次,上面是个人的一些总结,下面我们来看下封装的请求接口方法和下载二维码图片方法:
1 #region 生成二维码 2 3 /// <summary> 4 /// 生成二维码 5 /// </summary> 6 /// <param name="content">展示内容(文本内容 或者 扫描后的跳转http://格式的地址)</param> 7 /// <param name="savePath">保存二维码的磁盘路径(默认程序跟目录+QRCode)</param> 8 /// <param name="logoUrl"> Logo图标地址(格式:http://),(注:google接口暂未研究出此参数)</param> 9 /// <param name="apiUrl">接口地址(内置默认api地址)</param>10 /// <param name="wAndh">宽度和高度(二维码正方形的,高宽一至,默认200)</param>11 /// <returns></returns>12 public virtual string CreateQRCode(string content = null, string savePath = null, string logoUrl = null, string apiUrl = null, int? wAndh = null)13 {14 var qrName = string.Empty;15 16 #region 参数初始化17 18 ApiUrl = apiUrl ?? ApiUrl;19 Content = content ?? Content;20 SaveQRPath = savePath ?? SaveQRPath;21 LogoUrl = logoUrl ?? LogoUrl;22 WAndH = wAndh ?? WAndH;23 #endregion24 25 if (string.IsNullOrEmpty(ApiUrl)) { return qrName; }26 27 ApiUrl = string.Format("{0}?cht=qr&chl={1}&chs={2}x{2}",28 ApiUrl,29 HttpUtility.UrlEncode(Content),30 WAndH);31 32 qrName = DownImg(ApiUrl, SaveQRPath, ImageFormat.Jpeg);33 return qrName;34 }35 #endregion
原标题:二维码生成工厂
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。