Cha*_*n'd 7 android cross-domain same-origin-policy flutter flutter-inappwebview
我正在使用 InAppWebView 通过监听 onLoadResource 来制作视频下载应用程序,甚至抓取用户播放的视频并在 iframe 中删除视频,由于跨源政策,我无法获取 iframe 中的 url (.mp4, .m3u8......),我确实将allowUniversalAccessFromFileURLs和allowFileAccessFromFileURLs设置为true,但没有结果我无法获取iframe调用的资源:/,这是我的初始选项:
initialOptions: InAppWebViewGroupOptions(
android: AndroidInAppWebViewOptions(
supportMultipleWindows: true,
offscreenPreRaster: true,
allowUniversalAccessFromFileURLs: true,
allowFileAccessFromFileURLs: true,
),
crossPlatform: InAppWebViewOptions(
useOnLoadResource: true,
debuggingEnabled: true,
userAgent:
"Mozilla/5.0 (Linux; Android 9; Redmi Note 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Mobile Safari/537.36",
javaScriptEnabled: true,
javaScriptCanOpenWindowsAutomatically: true,
)),
Run Code Online (Sandbox Code Playgroud)
如果任何非常熟悉 inappwebview 或 flutter 的人能告诉我如何在 flutter 中禁用跨源策略或如何在不使用代理的情况下监听我的应用程序 http 请求...,我将不胜感激
小智 0
url 无法加载的原因有很多,在我的例子中,我得到了 Uncaught (inpromise) TypeError: Failed to fetch,因为我必须拦截请求,结果发现 webview 不验证 SSL 证书
initialOptions: InAppWebViewGroupOptions(
android: AndroidInAppWebViewOptions(
useShouldInterceptRequest: true,
),
)
androidShouldInterceptRequest:
(controller, request) async {
print("request $request");
}
Run Code Online (Sandbox Code Playgroud)
忽略 ssl 证书错误
onReceivedServerTrustAuthRequest: (controller, challenge) async {
print("challenge $challenge");
return ServerTrustAuthResponse(action:
ServerTrustAuthResponseAction.PROCEED);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1657 次 |
| 最近记录: |