带有连字符的 URL 无法使用 Android 浏览器打开
Posted
技术标签:
【中文标题】带有连字符的 URL 无法使用 Android 浏览器打开【英文标题】:URL with hyphen can not open with Android browser 【发布时间】:2018-01-16 20:50:51 【问题描述】:我遇到了一个非常奇怪的问题。网址如http://wei-.x.yupoo.com
可以用Windows PC、macOS、ios浏览器打开,但不能用android浏览器打开,会报DNS错误。
谁能帮我弄清楚为什么?我在 RFC3986 sec 3.1 中检查了 RFC7320 和 RFC3986
方案名称由一系列以 a 开头的字符组成 字母,后跟字母、数字和加号的任意组合 ("+")、句点 (".") 或连字符 ("-")。虽然方案是案例- 不敏感,规范形式是小写的,文档是 指定方案必须使用小写字母。一个实现 应该接受大写字母等同于方案中的小写 名称(例如,允许“HTTP”和“http”) 健壮性,但应该只为生成小写的方案名称 一致性。
看来这个网址应该没问题。
【问题讨论】:
【参考方案1】:尝试将连字符替换为%E2%80%93
示例:http://wei%E2%80%93.x.yupoo.com
【讨论】:
【参考方案2】:只需在 Android 中使用 Chrome。我一加三试了一下,可以打开了
【讨论】:
以上是关于带有连字符的 URL 无法使用 Android 浏览器打开的主要内容,如果未能解决你的问题,请参考以下文章
PhoneGap InAppBrowser:无法打开带有“%”字符的链接
URL 启动器在某些 Android 设备中无法与 Flutter Web 一起使用
带有乱码 UTF-8 字符的 Android WebView。