使用Axios从Express应用返回流-“提供的值'stream'不是XMLHttpRequestResponseType类型的有效枚举值。”

时间:2018-08-15 13:40:52

标签: node.js express axios

我正在学习Node,Express和React,并试图将用于调用Express API的简单通用Fetch方法转换为Axios。当我希望Axios自动将结果作为JSON数据返回时,我已经开始工作了,但是在这里我希望它返回ReadableStream。在文档中,它应该很简单:只需将字段responseType:'stream'添加到config,但我不断收到错误消息The provided value 'stream' is not a valid enum value of type XMLHttpRequestResponseType.,我看到其他人也遇到了这个问题(请参阅https://github.com/axios/axios/issues/1474 ),但没有任何解决方案。有谁知道是否有一个,或者我做错了什么?相关代码如下。感谢您提供任何见解!

const logic = {

 _call(path, method, headers, body, expectedStatus) {
        const config = { method,responseType:'stream', url: `http://localhost:8080/${path}`}

        if (headers) config.headers = headers
        if (body) config.data = body

        return axios( config)
            .then(res => {
                if (res.status === expectedStatus) {
                    return res
                } else
                    return res
                        .then(({ message }) => {
                            throw new Error(message)
                        })
            })
    }
}

0 个答案:

没有答案