if the proxyRes with bad statusCode, how can i retry the proxyRequest.
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- À l'abandon
- Stack technique
- javascript, node.js
- Domaine
- backend, networking
Piste de recherche
Commencez par suivre le handler proxy.on("proxyRes") et l’appel de retry proxy.web() présentés dans l’issue, y compris onResponseInterceptor et beforeRetry. Déterminez pourquoi l’appel de proxy.web() après un 401 ne produit pas de seconde response ; le travail est considéré comme terminé lorsque la requête peut actualiser son token, effectuer un retry et exposer la response suivante.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
I want to automatically bring the token when the statusCode is 401 and re-request。
for example:
onResponseInterceptor: (proxyRes, req, res, retry) => {
if (proxyRes.statusCode == 401) {
retry()
}
}
and the retry function is defined by:
this.proxy.on("proxyRes", (proxyRes, req, res) => {
console.log(req.headers);
const retry = async () => {
await this.option.beforeRetry?.(proxyRes, req, res)
const retry = (req.headers['x-retry'] || '0') as string;
req.headers["x-retry"] = (Number(retry) + 1).toString()
this.proxy.web(req, res,{
target: this.option.target,
changeOrigin: true,
selfHandleResponse: true
})
}
this.option.onResponseInterceptor?.(proxyRes, req, res, retry)
})
I tried to re-launch proxy.web() in proxy.on("proxyRes"). But this doesn't work and no second response is received. How do I solve this problem?
- Langage dominant
- JavaScript
- Étoiles
- 14.1k
- Forks
- 2k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de http-party/node-http-proxy
-
util._extend() is depracatoryOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
http-party/node-http-proxy#1719 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
http-party/node-http-proxy#1721 · 1 commentaire ·
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 55/100
http-party/node-http-proxy#1715 · 1 commentaire · 5 réactions ·
-
Is this library is dead?Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 15/100
http-party/node-http-proxy#1711 · 2 commentaires ·
-
HTTP3 + QUIC support?Ouverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
http-party/node-http-proxy#1710 · 5 réactions ·
Toutes les issues de http-party/node-http-proxy
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
ImranR98/apps.obtainium.imranr.dev#2000 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
routing: the tray panel's stage stands still with motion reduced while a request is in flightOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 66/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 83/100
microsoft/monaco-editor#5577 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
obsidianmd/obsidian-help#1169 ·
Les mainteneurs répondent en général sous 2 jours
-
[docs] RELEASE.md: wrong branch name, no check that the prepare PR merged with the right subject, manual publish stepPeut-être pris @albertteoh l’a pris aujourd’hui. Ouvertedocumentation
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
jaegertracing/jaeger-ui#4739 ·
Les mainteneurs répondent en général sous 1 jour