diff --git a/packages/core/acme-client/src/auto.js b/packages/core/acme-client/src/auto.js index 2707e23d3..4a13a48f0 100644 --- a/packages/core/acme-client/src/auto.js +++ b/packages/core/acme-client/src/auto.js @@ -84,6 +84,8 @@ module.exports = async function(client, userOpts) { log('[auto] Resolving and satisfying authorization challenges'); + const clearTasks = []; + const challengeFunc = async (authz) => { const d = authz.identifier.value; let challengeCompleted = false; @@ -139,15 +141,17 @@ module.exports = async function(client, userOpts) { throw e; } finally { - /* Trigger challengeRemoveFn(), suppress errors */ - log(`[auto] [${d}] Trigger challengeRemoveFn()`); - - try { - await opts.challengeRemoveFn(authz, challenge, keyAuthorization, recordItem); - } - catch (e) { - log(`[auto] [${d}] challengeRemoveFn threw error: ${e.message}`); - } + log(`[auto] [${d}] add challengeRemoveFn()`); + clearTasks.push(async () => { + /* Trigger challengeRemoveFn(), suppress errors */ + log(`[auto] [${d}] Trigger challengeRemoveFn()`); + try { + await opts.challengeRemoveFn(authz, challenge, keyAuthorization, recordItem); + } + catch (e) { + log(`[auto] [${d}] challengeRemoveFn threw error: ${e.message}`); + } + }); } } catch (e) { @@ -184,6 +188,9 @@ module.exports = async function(client, userOpts) { await runPromisesSerially(challengePromises); + + log('清理challenge'); + await runPromisesSerially(clearTasks); log('challenge结束'); // log('[auto] Waiting for challenge valid status'); diff --git a/packages/core/acme-client/src/axios.js b/packages/core/acme-client/src/axios.js index 83c632ced..873d3e37e 100644 --- a/packages/core/acme-client/src/axios.js +++ b/packages/core/acme-client/src/axios.js @@ -22,7 +22,10 @@ instance.defaults.acmeSettings = { tlsAlpnChallengePort: 443 }; - +// instance.defaults.proxy = { +// host: '192.168.34.139', +// port: 10811 +// }; /** * Explicitly set Node as default HTTP adapter *