【发布时间】:2017-05-17 04:18:37
【问题描述】:
我正在尝试从面部识别 API 获取 ajax 响应。响应是人脸的数据特征, 错误信息是
{"Errors":[{"Message":"在图像中找不到人脸","ErrCode":5002}]}
响应消息是
{"images":[{"status":"Complete","width":236,}]}]}
我应该如何编写 If/else 语句,以便在有面/响应时提示“成功”,如果没有面/错误则提示“失败”?
$("#testDetect").click(function () {
var file = $('#imageFile')[0].files[0];
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onloadend = function () {
var imageData = parseImageData(reader.result);
var data = {};
data.image = imageData;
$.ajax({
url : "http://localhost/Karios/simple-detect/form-post.php",
type : "POST",
data : data,
dataType : 'text'
}).done(function(response) {
console.log(response);
if (!response) {
alert('Hmm, unexpected response from Kairos');
} else if (response['Errors'] && response['Errors'].size() > 0) {
if (response['Errors'][0]['ErrCode'] == 5002) {
alert(response['Errors'][0]['Message']);
} else {
alert('Some other error occurred:\n' + response['Errors']['ErrorCode'] + ': ' + response['Errors']['Message']);
}
} else {
alert('Face(s) detected');
}
})
}
});
如果有人脸,如果没有人脸则提示“失败”
【问题讨论】:
-
以及没有错误时得到的响应
-
你传递给ajax调用的对象,你可以再传递两个字段
error和success,这两个都是回调。当有任何错误时,将调用错误回调,否则将调用成功回调。这样你就知道在哪里处理错误了。 -
@UjjwalKumarGupta 如果他们给我回复,我想提醒“成功”。如果他们向我发送错误,我想提醒“失败”。
-
@nurulnabi 感谢您的回复!由于我是编程新手,所以我不知道你在说什么......你能帮我写出代码吗?谢谢!
-
@JimmyLiao,看看我的回答。
标签: javascript jquery html ajax if-statement