redux 下一篇:Js 13 API路由在post请求后未获得正确的数据

lqfhib0f  于 2023-08-05  发布在  其他
关注(0)|答案(1)|浏览(108)

我正在使用Django后端和Next js前端进行身份验证项目。我正在使用redux toolkit进行状态管理,我在处理下一个js API时遇到了一个问题,这个api将数据发送到后端。下面是我对auth.js的操作,它将数据发送到API:

export const login = (email, password) => async dispatch => {
    const body = JSON.stringify({
        email,
        password
    });
    // alert(`body is ${body}`) //This alert is showing data hence it`s working
    dispatch({
        type: SET_AUTH_LOADING
    });
    try {
        const res = await fetch('/auth/login/api', {
            method: 'POST',
            headers: {
                'Accept': 'application/json',
                'Content-Type': 'application/json'
            },
            body: body
        });
    } catch (error) {

    }
}

字符串
下面是我的API路由,它应该与后端通信:

export async function POST(request) {
    const res = await request.body;
    console.log (`Response is ${res}`)
    const { email, password } = await request.body;
    const body = JSON.stringify({
        email,
        password
    });
    console.log(`Posted data is: ${body}`)
    return NextResponse.json({ res })
}


第一个console.log返回Response is [object Object],第二个console.log返回Posted data is: {}。由于正在调用API路由,我无法找出问题所在。任何帮助都将受到高度赞赏。

vd8tlhqk

vd8tlhqk1#

nest.js 13改变了一些东西。对于JSON内容,调用.json方法并等待它

export async function POST(request) {
    const body = await request.json();

    const { email, password } = body;
    const bodystring = JSON.stringify({
        email,
        password
    });
    console.log(`Posted data is: ${bodystring}`);
    return NextResponse.json({ res: body });
}

字符串

相关问题