为什么Chrome在使用“fetch()”时发送空体,但Edge正确发送了正文

问题描述 投票:0回答:1

我正在使用“fetch()”方法向另一台服务器发送请求,但使用Chrome发送的请求正文为空。

发送请求的应用程序是Vue应用程序,服务器正在使用AdonisJS。我已经在Microsoft Edge中尝试了我的应用程序,并且正文不是空的。

Vue中的请求:

const requestOptions = {
    method: 'POST',
    headers: {'Content-Type': 'application/plain'},
    body: JSON.stringify({username, password}),
};
let req = fetch('http://localhost:3333/user/login', requestOptions)
    .then(response => {
        return response.text();
    }).then(json => {
        this.$refs.debug.innerHTML = json
    })

AdonisJS中的控制器:

async login({request, response}) {
    console.log("params", request.raw());
    return '{"key": "value"}';
}
javascript google-chrome microsoft-edge
1个回答
3
投票

更改

    headers: {'Content-Type': 'application/plain'},

    headers: {'Content-Type': 'application/json'},
© www.soinside.com 2019 - 2024. All rights reserved.