You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

为何Google二维码API突然失效?生成的二维码无法被浏览器识别

排查Google二维码API生成的二维码无法被浏览器识别的问题

Hey,我之前也碰到过Google这个旧Chart API的诡异问题,咱们一步步来揪出原因:

1. 先修正URL的参数分隔符

你提供的URL里用了&,这是HTML转义后的&符号,但直接在浏览器地址栏里请求的话,这个转义字符会被当成参数的一部分,导致API解析参数出错,生成的二维码内容可能不符合标准。你把URL改成正常的&拼接试试:

https://chart.googleapis.com/chart?chs=150x150&cht=qr&chl=World&choe=UTF-8

生成后再用浏览器的二维码识别工具扫一下,看能不能正常识别。

2. 验证二维码的实际内容

如果修正URL后还是不行,找个本地的二维码解析工具(比如浏览器插件或者离线的解析软件),解析生成的图片,看看实际内容是不是World。要是内容不对,说明参数传递过程中出现了编码或者截断的问题。

3. 注意:这个API已经被弃用很久了

Google的Chart API早在多年前就标记为弃用状态了,虽然之前还能凑合用,但官方已经停止维护了。近期服务端可能做了底层调整,导致生成的二维码不符合通用识别标准(比如纠错等级、像素密度不达标),这是弃用服务常见的无预警异常。

4. 排查浏览器兼容性问题

试试在不同浏览器(Chrome、Firefox、Safari)里打开这个二维码图片,看是不是所有浏览器都识别不了。如果只有某一款浏览器有问题,可能是该浏览器的图片解码组件或者内置的二维码识别功能出了小故障,可以试试更新浏览器或者换个识别工具。

长远的替代方案

既然这个API已经不靠谱了,建议换成维护中的方案:比如用前端开源库(像QRCode.js)直接在本地生成二维码,完全不依赖第三方服务,稳定性和兼容性都要好得多。

内容的提问来源于stack exchange,提问作者Neeraj Bhat

火山引擎 最新活动