【问题标题】:Swift Encoding data into a URLSwift 将数据编码为 URL
【发布时间】:2018-09-23 05:42:20
【问题描述】:

所以我试图在二维码中存储一些数据。我已经设置了我的应用程序,它会扫描二维码并根据内容执行操作。用户必须拥有我的应用程序才能执行此操作。 如果有人没有我的应用程序,我希望他们能够使用普通/第三方 QR 扫描仪扫描 QR 码并定向到我的网站或我的应用程序的 AppStore 页面。 我发现了一个 Android 用户的帖子,他描述了将数据编码到 URL 中。普通的 QR 扫描仪只会看到 URL 并将用户定向到网站。自定义应用程序将解码 URL 并提取其中的数据。 我只是想知道这样的事情对 Swift 来说是否可行?

提前致谢。

【问题讨论】:

  • 一个二维码,它只是一个编码为图像的字符串。检查字符串是否为有效 URL 是您的工作。所以答案是肯定的,你可以在 Swift 中轻松做到这一点(无论是 String->Image->String )

标签: ios swift qr-code


【解决方案1】:

是的,这很简单,而且 Swift 或 iOS 没有什么特别之处。

将您的 URL 设置为指向您网站的 URL,并带有传递所需数据的查询参数:

http://mywebsite/loaddata?code=aabbccddeeffgghhiijjkkllmmnn

您可以将数据编码为您选择的加密算法的 Base64 编码输出,因此只有您的应用能够对其进行解码。

将其编码为二维码中的字符串。大多数二维码阅读器都能识别 HTTP URL,并会主动打开链接。

然后,您可以对您的网站进行编码以根据需要响应 URL。

您的应用可以被编码为解析二维码中的字符串并忽略除code= 之后的部分之外的所有内容。

【讨论】:

  • 感谢您的评论,这似乎是完美的选择。我设法通过在末尾添加一个只有我的应用程序才能识别的字符串来创建 URL。我现在的问题是,当我尝试在浏览器中打开 URL 时,我收到一条错误消息,指出该页面不存在。有没有办法让网站只查看第一部分,即mywebsite.com,而不是整个 URL:mywebsite.com/loaddata?code=aaabbbssccc
  • 当然可以。你如何做到这一点取决于你的服务器是如何配置的。
  • 好的,太棒了。它只是一个由 GoDaddy 托管的基本登录页面。我将查看他们的帮助文档。感谢您的帮助。
猜你喜欢
  • 2013-09-09
  • 2021-05-05
  • 1970-01-01
  • 2023-03-06
  • 2017-01-24
  • 1970-01-01
  • 1970-01-01
  • 2011-12-26
  • 1970-01-01
相关资源
最近更新 更多