redux fetch body不能用于没有cors模式

时间:2016-02-03 06:11:22

标签: javascript reactjs fetch redux fetch-api

我有一个调用函数的动作:

[
    {
        "key": "ctrl+d",
        "command": "editor.action.copyLinesDownAction",
        "when": "editorTextFocus"
    },
    {
        "key": "ctrl+shift+up",
        "command": "editor.action.moveLinesUpAction",
        "when": "editorTextFocus"
    },
    {
        "key": "ctrl+shift+down",
        "command": "editor.action.moveLinesDownAction",
        "when": "editorTextFocus"
    }
]

这里我将数组作为数据传递..

dispatch(Api({url: "my_url", method: "POST", data: data}))

我在import fetch from 'isomorphic-fetch' export default function Api({url, method, headers, data}={}){ return dispatch => { console.log(data) console.log(url) console.log(method) console.log(JSON.stringify(data)) let response = fetch(url, { mode: 'no-cors', method: method || null, body: data || null, }).then(function(response) { console.log("response"); console.log(response) }); } } 使用fetch我想我正在传递所有争论。我的身体是一个简单的数组,我作为争论传递..

当我看到响应时,它就像:

mode:'no-cors'

我的身体没有被使用..

这里有什么问题?需要帮助

1 个答案:

答案 0 :(得分:26)

您收到了opaque response [1] [2],因为您正在使用mode: 'no-cors'抓取。 您需要使用mode: 'cors',服务器需要发送所需的CORS标头[3]才能访问响应。