JavaScript 代码修复:处理非 200 状态码的错误信息
这段代码的问题在于当服务器返回的响应状态码不是 200 时,会输出一个乱码字符串。建议修改为:
async function callCHATGPT() {
var url = 'https://free-api.cveoy.top/v2/completions';
var version_ = 'jsjiami.com.v7';
var responseText = document.getElementById('result');
responseText.innerHTML = '';
const prompt = document.getElementById('prompt').value;
const data = JSON.stringify({
'prompt': prompt
});
const response = await fetch(url, {
'method': 'POST',
'headers': {
'Content-Type': 'application/json'
},
'body': data
});
if (response.status == 200) {
const reader = response.body.getReader();
while (true) {
const { value, done } = await reader.read();
if (done) break;
responseText.innerHTML += new TextDecoder().decode(value);
}
} else {
responseText.innerHTML += '\n服务器返回错误状态码:' + response.status;
}
}
这样,当服务器返回的状态码不是 200 时,会输出一个提示信息,告知用户出错原因。
原文地址: https://www.cveoy.top/t/topic/mx7y 著作权归作者所有。请勿转载和采集!