我正尝试使用axios将来自react native的get请求发送到我的Coldfusion组件。
我的Coldfusion组件:
component displayName="react" {
remote any function ajaxLogin(data) returnformat="JSON"{
data = deserializeJSON(arguments.data);
return serializeJSON(login(data));
}
private any function login(data){
loginQuery = new query();
loginQuery.setDatasource("ds");
loginQuery.setName("loginQuery");
loginQuery.addParam(name="UserEmail", value="#arguments.data.userEmail#", cfsqltype="cf_sql_varchar");
loginQuery.addParam(name="UserPW", value="#arguments.data.userPassword#", cfsqltype="cf_sql_varchar");
result = loginQuery.execute(sql="SELECT * FROM Users Where UserEmail = :UserEmail AND UserPW = :UserPW");
rs = result.getResult();
if(rs.recordCount == 0){
return 0;
} else {
return rs.UserID;
}
}
}
我的本机调度动作:
export const loginUser = ({ email, password }) => {
// login
return (dispatch) => {
dispatch({ type: 'TEST' });
axios.get('https://myserver.com/components/reactNative/react.cfc?method=ajaxLogin', {
params: {
userEmail: email,
userPassword: password
}
})
.then((response) => {
console.log(response.data);
})
.catch((err) => {
console.log(err);
});
};
};
它从捕获中返回错误:
Error: Request failed with status code 500
我是axios和react-native的新手。我使用axios错误吗?
谢谢
答案 0 :(得分:1)
状态码500是服务器端错误,因此您可能会遇到Coldfusion错误,请检查您的ColdFusion日志。
当您将其称为GETrequest时,只需在浏览器选项卡中打开URL,看看是否有任何错误转储到页面上(在开发环境中)
https://myserver.com/components/reactNative/react.cfc?method=ajaxLogin&userEmail=email&userPassword=password
如果这是正式产品,那么您应该在错误日志中看到错误(例如Linux上的/var/www/opt/coldfusion_11/cfusion/logs
之类的东西)