开发者社区> 问答> 正文

XMLHttpRequest接收文件并处理error问题?报错

function getMp4(url) {
        var xhr = new XMLHttpRequest();
        xhr.addEventListener("load", function (event) {
            if (xhr.status === 200) {
                var blob = xhr.response;
                console.log(blob);
            }else if(xhr.status !== 200){
                console.log(xhr.response);
            }
        }, false);
        xhr.onprogress = function(event){
            console.log(event);
        }
        xhr.responseType = "blob";
        xhr.open("GET", url, true);
        xhr.send();
    }

    如果成功返回二进制blob数据,是没有问题的,但是如果后台报错, 返回status!==200的结果,我本意是想得到字符串的错误信息,但是因为设置了返回blob类型,就会得到的还是blob的对象,有什么好的办法让他返回字符串吗?

 

展开
收起
爱吃鱼的程序员 2020-06-08 16:42:49 805 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    varfr=new FileReader();

    fr.readAsText(blob);

    你看下是不是这个http://blog.csdn.net/zk437092645/article/details/8745647

     

    什么意思?blob转字符串也不知道怎么转。。

    要学会搜索

    参考一下 http://blog.csdn.net/oscar999/article/details/36373183

    回复 @船长想开车:https://developer.mozilla.org/zh-CN/docs/Web/API/Blob看文章这一段从Blob中读取内容的唯一方法是使用FileReader......这个是字符串转blob。反过来blob转字符串怎么弄?

    varfr=new FileReader();

    fr.readAsText(blob);

    你看下是不是这个http://blog.csdn.net/zk437092645/article/details/8745647

    是这个,我自己也找到了这个方法,非常感谢!
    2020-06-08 16:43:04
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载