为什么 JSON 从服务器发送到浏览器的数据未定义?

Why is JSON data sent from server to browser undefined?

我想用 fetch() 向我的服务器发出请求,并返回数据以在前端应用程序中使用。

这是我的路线:

    app.get('/game-data', (req, res) => {
    res.json({ data: "test-data" })
})

这是我的要求:

button.addEventListener('click', () => {
    fetch('/game-data', {
        headers: {
            'accept': 'application / json',
            'Content-Type': 'application/json'
        }
    })
        .then(response => {
            console.log(response)
            response.json()
        })
        .then(myJson => {
            console.log(myJson)
        })
})

我可以在第一个控制台日志中看到响应对象,但是 response.json() 或 response.text() 返回未定义。

请帮我看看我错过了什么!

您需要 return 该值才能在另一个 .then

中使用它
.then(response => {
        console.log(response)
        return response.json()
    })