我有一个服务器请求,应该找到一个文件,如果找不到该文件,则需要在js控制台中打印一条自定义消息,说“我找不到文件x”。
我曾尝试引发异常,引发Http错误,发送自定义请求...。
但是我不知道如何发送错误(例如400、404 ...)和与此错误相关的自定义消息。
这样做的目的是,当XMLHttpRequest()
对象获得响应时,如果状态不是200,则应打印错误。
对于这是否是一种好的做法,我没有兴趣,我只需要能够以某种方式做到。
在服务器端,我正在尝试以下方法:
raise HttpResponse('I am message')
在客户端,我正在尝试:
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onloadend = () => {
if (xhr.status != 200) {
//print error somehow
}
}
最佳答案
如果您预期后端发生错误,则可以将该代码包装在try catch块中,而不是抛出错误,您可以从错误中获取文本并将其发送回去。由于您捕获了错误,因此这将导致200响应。因此,id响应了某种对象,其中属性之一是状态。就像是:
[
['status'] => 'error',
['message'] => 'I've fallen and cant get up'
]
然后,您可以:
if(response.data.status == 'error') {
console.log(response.data.message);
}
希望能有所帮助。
关于javascript - 如何使用django从服务器向客户端发送错误消息并将其打印到控制台?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57912464/