vue-resource,如何改变响应格式?

使用vue-resource 发送一个get请求,响应数据是文本,却接收到的数据是blob类型。请问怎么破?

node.js 服务器代码:

router.get('/',function (req, res, next) {

var data = querystring.parse(url.parse(req.url).query);    
res.sendfile("./public/song/"+data.lyric,'utf8');

})

vue-resource 代码:

this.$http.get(url)

    .then(function (res) {
     console.log(res.body);
    })

响应内容:
图片描述
图片描述

阅读 3.4k
2 个回答

抱歉,express和vue-resource都是不会很熟

尝试更改服务端代码,指定头部

router.get('/',function (req, res, next) {
    var data = querystring.parse(url.parse(req.url).query);    
    res.sendfile("./public/song/"+data.lyric,{
        headers:{
            'content-type':'text/plain'
        }
    });
})

我没记错的话vue-resource的res是text这个属性的

this.$http.get(url)
    .then(function (res) {
        console.log(res.text);
    })

建议换用superagent或者axios

我没记错的话,res.data才是响应过来的数据

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题