我将输入字段中的数据发送到我的api:
$.ajax({
url: '/api/login',
type: 'GET',
dataType: 'json',
ContentType: 'application/json',
data: {formData},
success: (data) => {
console.log('SUCCESS')
console.log(data)
this.setState({
isInProcess: false
})
},
error: (jqXHR) => {
console.log(jqXHR)
console.log('ERROR')
this.setState({isInProcess: false})
}
})
在我的服务器端我有一个函数来查看我是否在db中需要用户:
async function findUser(data) {
try {
const user = await User.findOne({email: data.email,
password: data.password})
console.log('User was found')
return { user }
} catch (err) {
console.log('error', err)
throw err
}
}
将在此处执行:
app.get('/api/login', async (req, res) => {
const data = req.query
try {
const foundUserData = await findUser(data.formData)
return res.json(foundUserData)
} catch (err) {
return res.status(400).json(err)
}
})
答案 0 :(得分:2)
[HttpPost]
public void SaveImage(string base64image)
{
if (string.IsNullOrEmpty(base64image))
return;
var t = base64image.Substring(22); // remove data:image/png;base64,
byte[] bytes = Convert.FromBase64String(t);
Image image;
using (MemoryStream ms = new MemoryStream(bytes))
{
image = Image.FromStream(ms);
}
var randomFileName = Guid.NewGuid().ToString().Substring(0, 4) + ".png";
var fullPath = Path.Combine(Server.MapPath("~/Content/Images/"), randomFileName);
image.Save(fullPath, System.Drawing.Imaging.ImageFormat.Png);
}
不会抛出错误,返回await findUser(data.formData)
或用户对象。您可以查看以下内容
null
答案 1 :(得分:0)
它发送成功,因为没有任何查询错误,只是因为它没有找到任何内容并不意味着查询失败,因为它显然成功地找出了您是否正在寻找什么是否存在。
要在未找到的情况下发送错误,您需要检查响应是否为空,在这种情况下您要发送错误
答案 2 :(得分:0)
如果没有找到用户,则会获得null
值。您可以尝试在成功参数上添加更多逻辑,例如:
success: function (data) {
if(!!data && data != null) {
alert('Success');
} else {
alert('No data');
}
}