我正在使用我的后端进行简单身份验证。
我的行动无法处理试用,我不知道为什么它没有像我预期的那样工作,因为它在一个月前就有用了。
export const doAuthLogin = ( username, password ) => async dispatch => {
console.log('passing action'); <- print 'passing action'
let response = await axios.post(`${ROOT_URL}/rest-auth/login/`, {
username,
password,
}); <- shows 400 error on console (Expo)
console.log(response.status); <- print nothing // well 200 can prints status here
console.log('doesn't work); <- print nothing
if (response.status === 200) { <- doesn't execute
答案 0 :(得分:1)
您正在使用try-catch
块进行异步操作(发布)。那不对。操作运行,在响应(“异步”响应)之前,代码继续运行并结束。
您的异步操作必须具有处理响应的回调函数参数。
答案 1 :(得分:0)
我认为你必须在上层函数中指定它是一个异步函数。
export const doAuthLogin = async (username, password) => async dispatch => {
如果这不起作用,请使用整个代码库创建一个jsfiddle / codepen,以便我们进一步调查。