Fix for SSL certificate error #2011

- Keepalive, User Agent + Accept headers
- Catch added for failed JSON parsing
- More accurate errors displayed to user
This commit is contained in:
S_T_3_V_3
2023-04-23 18:32:34 +10:00
parent 67208e43cc
commit cc5465638e

View File

@ -1164,7 +1164,10 @@ const internalCertificate = {
method: 'POST', method: 'POST',
headers: { headers: {
'Content-Type': 'application/x-www-form-urlencoded', 'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': Buffer.byteLength(formBody) 'Content-Length': Buffer.byteLength(formBody),
'Connection': 'keep-alive',
'User-Agent': 'Nginx Proxy Manager',
'Accept': '*/*'
} }
}; };
@ -1175,12 +1178,16 @@ const internalCertificate = {
res.on('data', (chunk) => responseBody = responseBody + chunk); res.on('data', (chunk) => responseBody = responseBody + chunk);
res.on('end', function () { res.on('end', function () {
const parsedBody = JSON.parse(responseBody + ''); try {
if (res.statusCode !== 200) { const parsedBody = JSON.parse(responseBody + '');
resolve(parsedBody);
}
catch {
logger.warn("Error");
logger.warn(`Status Code: ${res.statusCode}`);
logger.warn(`Failed to test HTTP challenge for domain ${domain}`, res); logger.warn(`Failed to test HTTP challenge for domain ${domain}`, res);
resolve(undefined); resolve(undefined);
} }
resolve(parsedBody);
}); });
}); });