如何在 iOS 中使用 WKWebView 将值动态传递到 iFrame
How to dynamically pass a value into an iFrame using WKWebView in iOS
我正在尝试将 iFrame 与 WKWebView 结合使用,以加载流媒体(主机)网站推荐的嵌入式音频播放器。
当我动态传递音轨 ID 时,我收到一条错误消息,指出 音频不可用或已被删除 。但是,当我对音轨 ID 进行硬编码时,它工作得非常好,我可以加载嵌入式播放器。
我想知道将参数动态传递给 iFrame 的正确方法是什么,以便我可以使用 WKWebView 加载内容 (Swift 5/ iOS 13+)?
总结...
这不起作用:(动态传递 track-id)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=\(track-id)\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
webView.loadHTMLString(htmlToLoad!, baseURL: nil)
...
这有效:(硬编码轨道 ID)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=12345\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
webView.loadHTMLString(htmlToLoad!, baseURL: nil)
两个 htmlToLoad 变量之间的唯一区别是 track_id 的传递方式。
数据流是这样的,我下载了曲目播放列表(通过 REST API 调用),然后传递获得的 track_id(当用户 select 曲目时) 加载 iFrame(由主机提供)。
我已确保变量正确流过并且 track-id 的值有效。
感谢我能得到的任何帮助。
找到了可行的方法,
而不是“(变量)”:(旧方法)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=\(track-id)\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
我连接了变量:(新方法)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=" + track-id + "\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
这有效并保存变量值。
我正在尝试将 iFrame 与 WKWebView 结合使用,以加载流媒体(主机)网站推荐的嵌入式音频播放器。
当我动态传递音轨 ID 时,我收到一条错误消息,指出 音频不可用或已被删除 。但是,当我对音轨 ID 进行硬编码时,它工作得非常好,我可以加载嵌入式播放器。
我想知道将参数动态传递给 iFrame 的正确方法是什么,以便我可以使用 WKWebView 加载内容 (Swift 5/ iOS 13+)?
总结...
这不起作用:(动态传递 track-id)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=\(track-id)\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
webView.loadHTMLString(htmlToLoad!, baseURL: nil)
...
这有效:(硬编码轨道 ID)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=12345\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
webView.loadHTMLString(htmlToLoad!, baseURL: nil)
两个 htmlToLoad 变量之间的唯一区别是 track_id 的传递方式。
数据流是这样的,我下载了曲目播放列表(通过 REST API 调用),然后传递获得的 track_id(当用户 select 曲目时) 加载 iFrame(由主机提供)。
我已确保变量正确流过并且 track-id 的值有效。
感谢我能得到的任何帮助。
找到了可行的方法,
而不是“(变量)”:(旧方法)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=\(track-id)\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
我连接了变量:(新方法)
htmlToLoad = "<iframe src=\"https://widget.podcastwebsite.com/player?track_id=" + track-id + "\" width=\"100%\" height=\"50%\" frameborder=\"0\"></iframe>"
这有效并保存变量值。