Estoy usando Wistia API para cargar videos. El código parece estar bien y de acuerdo con los documentos de Wistia, pero cuando cargo un archivo, muestra que el progreso va de 0 a 100 %, pero después de alcanzar el 100 %, Sentry registra el siguiente error en la consola:
Uncaught TypeError: this.wRemoteRequestor.post is not a functionEste error apunta al archivo wistia js en https://fast.wistia.com/assets/external/api.js en la siguiente línea:
this.wRemoteRequestor.post(i, { dataType: "json", success: function(e) { r.transformToCreateMediaResponse(e), e.data.originalUrl = "".concat(r.generateExtensionlessOriginalUrl(o), ".bin"), r.wistiaUploader._onSuccessRaw(e) }, error: function(e) { r.wistiaUploader._onError(e) } })El siguiente es el código:
<div id="wistia-upload-widget" style="height:312px; width:500px;"></div> // Wistia Video Setup window._wapiq = window._wapiq || []; _wapiq.push(function(W) { window.wistiaUploader = new W.Uploader({ accessToken: "{{wistia_access_token}}", dropIn: "wistia-upload-widget", projectId: "{{wistia_project_id}}" }); wistiaUploader.bind("uploadstart", function(file) { window.onbeforeunload = confirmLeaveBeforeUpload; console.log("Upload has began: ", file); }); wistiaUploader.bind('uploadsuccess', function(file, media) { console.log("Upload succeeded."); $.ajax({ type: "POST", url: '{% url 'video:create' %}', data: {key: media.id}, success: function (res) { window.onbeforeunload = confirmLeaveBeforePublish; $('#upload-init').addClass('hide'); $('#video').val(res.data.pk); $('#video-thumbnail').addClass('hide'); $('#uploaded-video').removeClass('hide'); }, }); }); wistiaUploader.bind('uploadembeddable', function(file, media, embedCode, oembedResponse) { console.log("Embeddable:", media); }); wistiaUploader.bind("uploadfailed", function(file, errorResponse) { console.log("Upload failed:", errorResponse.error); alert("Unfortunately, your video failed to upload. Please give this information to support: " + errorResponse.error); window.onbeforeunload = null; }); });Nota: el token de acceso y project_id provienen de django y están colocados correctamente.
Parece que fue un problema por parte de Wistia debido a una actualización según su soporte. Siempre pareció así, ya que el problema estaba en su archivo api.js. Ahora funciona.