Estoy tratando de descargar un video de blob "blob: https://www.xxxxxxx.com/310be2d8-da0a-47b3-b0ea-8e4dac021a5b" usando WKWebView. mi código es:
if (err != nil) { print(err!.localizedDescription) print(err.debugDescription) debugPrint("JavaScript Error: \(String(describing: err))") } if result != nil { print(result!) } print("Complete") }donde termWebView es mi WKWebview.
El JavaScript es el siguiente:
function blobToDataURL(blob, callback) { var reader = new FileReader(); reader.onload = function(e) {callback(e.target.result.split(",")[1])}; reader.readAsDataURL(blob); } async function fetchURL() { const url = '\(url)'; try { const blob = await fetch(url).then(response => response.blob()); } catch (err) { window.webkit.messageHandlers.jsListener.postMessage(`fetch threw, error: ${err}, url: ${url}`); return; } window.webkit.messageHandlers.jsListener.postMessage("Fetched"); blobToDataURL(blob, datauri => { const responseObj = { url: url, mimeType: blob.type, size: blob.size, dataString: datauri}; }); window.webkit.messageHandlers.jsListener.postMessage("JSON.stringify(responseObj)"); } fetchURL(); """Recibo el siguiente mensaje de error: Error de JavaScript: Opcional (Error Domain=WKErrorDomain Code=5 "La ejecución de JavaScript devolvió el resultado de un tipo no admitido" UserInfo={NSLocalizedDescription=La ejecución de JavaScript devolvió el resultado de un tipo no admitido})
No puedo establecer exactamente cuál es el tipo que no es compatible, solo que la captura después de esperar la búsqueda (url) me dio el siguiente mensaje: búsqueda lanzada, error: TypeError: Carga fallida, url: blob: https://www.xxxxxxx. com/310be2d8-da0a-47b3-b0ea-8e4dac021a5b
Estoy un poco perdido. Cualquier ayuda sería muy apreciada.