Error method parsed when more data append request buffer
- Langage dominant
- C
- Étoiles
- 345
- Forks
- 94
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
I made a demo
```
try:
from http_parser.parser import HttpParser
except ImportError:
from http_parser.pyparser import HttpParser
req = "GET / HTTP/1.1\r\nHost: www.xxx.com\r\n\r\n"
resp = "HTTP/1.1 200 OK\r\nContent-Length: 4\r\n\r\n1234"
data = req
p = HttpParser()
nparsed = p.execute(data, len(data))
print p.get_method(), nparsed, len(data)
# Got: GET 37 37
data = req + resp
p = HttpParser()
nparsed = p.execute(data, len(data))
print p.get_method(), nparsed, len(data)
# Got: HEAD 38 79
# pyparser Got: GET 79 79
# expected: GET 37 79
```
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par exécuter la démo fournie via les points d’entrée de HttpParser pris en charge par C, en particulier execute et get_method, puis comparez-la à pyparser. Suivez pourquoi l’ajout de la réponse modifie la méthode analysée ; le travail est terminé lorsque l’implémentation C indique GET, analyse 37 octets de requête et laisse la longueur combinée à 79, comme indiqué dans le résultat attendu.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- c, python
- Domaine
- api, backend
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 42/100