如何从 Swift 中的深层链接获取重定向 url
How to get the redirect url from deeplink in Swift
如何从给定的重定向深层链接字符串中获取 URL?
例如,如果我有一个深层链接字符串
myapp://open-browser/https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME
我希望得到 return 结果为
https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME
我尝试了 Apple 文档中的几种方法
Accessing the Parts of a URL,
最接近的是结合 path
和 query
如下图
有没有人有更好的方法来做到这一点?
我明白你的问题了,我想你只想得到从https://
开始的url,请指正。
如果是这样,我想我可以删除深层链接 url 方案 myapp://
和主机 open-browser/
如
let url = "myapp://open-browser/https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME"
let deeplinkBase = "myapp://open-browser/"
let newUrl = url.absoluteString.replacingOccurrences(of: deeplinkBase, with: "")
那么你可以随意使用 newUrl
因为我们现在得到了预期的结果
https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME
我的 deeplinkBase
字符串示例是硬编码的,但我想您以后可以使用枚举或任何处理程序。
如何从给定的重定向深层链接字符串中获取 URL?
例如,如果我有一个深层链接字符串
myapp://open-browser/https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME
我希望得到 return 结果为
https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME
我尝试了 Apple 文档中的几种方法
Accessing the Parts of a URL,
最接近的是结合 path
和 query
如下图
有没有人有更好的方法来做到这一点?
我明白你的问题了,我想你只想得到从https://
开始的url,请指正。
如果是这样,我想我可以删除深层链接 url 方案 myapp://
和主机 open-browser/
如
let url = "myapp://open-browser/https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME"
let deeplinkBase = "myapp://open-browser/"
let newUrl = url.absoluteString.replacingOccurrences(of: deeplinkBase, with: "")
那么你可以随意使用 newUrl
因为我们现在得到了预期的结果
https://mydaily.dev/JOURNAL/home?id=123e4567-e89b-12d3-a456-426655440000&source=01&channel_id=HOME
我的 deeplinkBase
字符串示例是硬编码的,但我想您以后可以使用枚举或任何处理程序。