fix: handle null data in browseWavs, add HTTP status check
Avoid 'Cannot read properties of null (reading error)' when server returns null or non-JSON. Also check resp.ok before parsing JSON.
This commit is contained in:
+6
-2
@@ -202,9 +202,13 @@ async function browseWavs() {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
const resp = await fetch(`${API}/list-wavs?dir=${encodeURIComponent(dir)}`);
|
const resp = await fetch(`${API}/list-wavs?dir=${encodeURIComponent(dir)}`);
|
||||||
|
if (!resp.ok) {
|
||||||
|
list.innerHTML = '<span class="no-files">HTTP ' + resp.status + '</span>';
|
||||||
|
return;
|
||||||
|
}
|
||||||
const data = await resp.json();
|
const data = await resp.json();
|
||||||
if (data.error) {
|
if (!data || data.error) {
|
||||||
list.innerHTML = '<span class="no-files">Error: ' + data.error + '</span>';
|
list.innerHTML = '<span class="no-files">Error: ' + (data && data.error ? data.error : 'server error') + '</span>';
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (!Array.isArray(data) || data.length === 0) {
|
if (!Array.isArray(data) || data.length === 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user