Reject empty WeChat HTTP errors without leaving requests pending

This commit is contained in:
Rudy Celekli
2026-09-29 20:55:06 -04:00
parent 765be42358
commit a0f3137719
@@ -106,7 +106,12 @@ const request = (options) => {
if (res.statusCode >= 200 && res.statusCode < 300) {
resolve(res.data);
} else {
reject({ code: res.statusCode, message: res.data.message || 'Request failed' });
// Error bodies may be empty, plain text, or a gateway HTML page.
// Do not throw inside the success callback and leave the Promise pending.
const message = res.data && typeof res.data === 'object' &&
typeof res.data.message === 'string' && res.data.message
? res.data.message : 'Request failed';
reject({ code: res.statusCode, message });
}
},
fail: (err) => {