可能的未处理的承诺拒绝/错误:请求失败,状态码为400

时间:2018-07-13 09:06:56

标签: react-native redux react-redux axios

我知道对此有一些答案,我已全部阅读。但是他们都没有帮助。 所以这是我的错误信息:

Error message

这是我的动作:

if ( -1 === available_formatted_days_list.indexOf(currentDay) )

}

谢谢!

4 个答案:

答案 0 :(得分:1)

尝试获取用于进行API调用的库。

function registerUser(data){
    return fetch(url, {
        method: 'POST',
        body: JSON.stringify(data),
        headers:{
            'Content-Type': 'application/json'
        }
        })
        .then(res => res.json())
        .then((apiResponse)=>{ 
            console.log("api response", apiResponse) 
            return {
                type: "REGISTER_USER",
                api_response: apiResponse.data
            }
        })
        .catch(function (error) {
            return {
                type: "REGISTER_USER",
                api_response: {success: false}
            }
        })
}

调用上述功能

let data = { 
 email: "youremail@gmail.com,
 password:"yourpassword"
}   

registerUser(data).then((response)=>{
  console.log(response)
})

答案 1 :(得分:0)

记录错误并成功,然后检查:

string strJSON = string.Empty;

strJSON = rClient.makeRequest();
Console.Write(strJSON);

AddressInfo AI = new AddressInfo();
AI = Newtonsoft.Json.JsonConvert.DeserializeObject<AddressInfo>(strJSON);

答案 2 :(得分:0)

export function registerUser(data){
  return axios({
      method: "POST",
      url: `${REGISTER}${API_KEY}`,
      data: {
        email: data.email,
        password: data.password,
      },
      headers:{
        "Content-Type":"application/json"
      } 
  }).then((api_response)=>{ 
    return {
      type: "REGISTER_USER",
      api_response: api_response.data
    }
  }).catch(function (error) {
    return {
      type: "REGISTER_USER",
      api_response: {success: false}
    }
  })
}

//Invoking the above function
 let data = { 
     email: "youremail@gmail.com,
     password:" password"
   }      
registerUser(data).then((response)=>{
  console.log(response)
})

答案 3 :(得分:0)

在调用带有承诺的api的任何地方都应使用catch处理程序,因为当api失败时您不必这样做,而必须处理错误。

export function registerUser(data){
  return axios({
    method: 'post',
    url: `${REGISTER}${API_KEY}`,
    data: {
        email: data.email,
        password: data.password,
    },
    headers: {
       'Content-Type': 'application/json'
    }})
    .then(function (response) {
        //handle success
        return {
            type: "REGISTER_USER",
            payload: response.data,
        }
    })
    .catch(function (err) {
        //handle error
        return {
            type: "REGISTER_USER_FAILED",
            payload: null
        }
    });
}

像这样调用函数

const data = {
    email: 'asd@asd.asd',
    password: 123
}
registerUser(data).then((response)=>{
  console.log(response)
})