首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >谁能告诉我如何为带参数的url创建二维码?

谁能告诉我如何为带参数的url创建二维码?
EN

Stack Overflow用户
提问于 2012-07-24 13:08:58
回答 1查看 8.1K关注 0票数 2

我试过用几个网页来创建二维码,来创建一个常规网址的二维码,它们都很好。

但是,如果我对url设置了参数,那么得到的url就不能正确解码。

如果你尝试这样做

代码语言:javascript
复制
http://chart.apis.google.com/chart?cht=qr&chs=500x500&choe=UTF-8&chld=H&chl=http://localhost?someparam=1&someotherparam=2

而不是指向http://localhost?someparam=1&someotherparam=2的二维码

安卓和iPhone上的Barcodescanner解码器应用程序指向

代码语言:javascript
复制
http://localhost/?someparam=1&someotherparam=2

服务器名(域名)和参数字符串开头之间的正斜杠/显然不正确。

我假设这与url编码有关,我只是在寻找一个指向正确方向的指针,这个指针来自可能已经破解了这个问题的人。

Zxing的二维码生成器也有同样的效果。但它似乎也依赖于谷歌。

http://zxing.appspot.com/generator/

也是

http://d-project.googlecode.com/svn/trunk/misc/qrcode/js/sample.html

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-24 13:50:28

您需要对每个参数值执行URL-encode操作,在您的示例中,尤其是chl参数。现在大多数语言都有这样的库,或者在web上搜索"url encoder“就会给出一个表单。

http://localhost?someparam=1&someotherparam=2的url编码是http%3A%2F%2Flocalhost%3Fsomeparam%3D1%26someotherparam%3D2

此外,URL本身是参数值的任何参数值也必须独立地进行URL编码。

正如Sean在下面提到的,如果您在appspot页面的表单中输入您的URL,它将正确地对图表URL进行url编码:

代码语言:javascript
复制
http://chart.apis.google.com/chart?cht=qr&chs=350x350&chld=L&choe=UTF-8&chl=http%3A%2F%2Flocalhost%3Fsomeparam%3D1%26someotherparam%3D

我不确定你额外的/评论。如果转到您提供的URL,则code值为

代码语言:javascript
复制
http://localhost?someparam=1

这是预期的,因为chl参数值没有转义,因此在第一个&处结束。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11624485

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档