A JSON body that starts with a brace can be parsed from the middle
Évaluation
- Difficulté
- 2/5
- Temps estimé
- 1-3 heures
- Accessibilité débutants
- 76/100
Piste de recherche
Commencez par localiser la fonction load_prefixed_json dans le code source de HTTPie et reproduisez les exemples de l’issue. Examinez le comportement de recherche de préfixe et ses tests existants, s’il y en a. C’est terminé lorsqu’une chaîne ressemblant à du JSON et commençant par une accolade supplémentaire est rejetée au lieu d’être analysée à partir du milieu, tandis qu’un préfixe valide tel que while(1); est conservé.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Describe the bug
load_prefixed_json('{{"a": 1}') returns the prefix a and the object {"a": 1}. The string is not JSON, and a is not a prefix. while(1);{"a": 1} should still return the prefix while(1); and the object.
The prefix search uses re.findall and then cuts len(match) characters off the front, even when that match does not start at the front.
To Reproduce
from httpie.output.utils import load_prefixed_json
print(load_prefixed_json('{{"a": 1}'))
- Langage dominant
- Python
- Étoiles
- 38.7k
- Forks
- 4k
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
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 httpie/cli
-
Header formatting reorders repeated fields with mixed capitalizationPeut-être pris @xu91102 l’a pris il y a 17 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
JSON formatting ignores uppercase and mixed-case Content-Type valuesPeut-être pris @xu91102 l’a pris il y a 17 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
-
new
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
-
Bug: Windows guard in is_available() compares os.system (a function) to 'nt' — always FalsePeut-être pris @yoshibase l’a pris il y a 90 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
-
Inconsistent argument parsing behavior across Python versions (< 3.13 vs 3.13+)Peut-être pris @BetterAndBetterII l’a pris il y a 39 jours. Ouvertebug new
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
Toutes les issues de httpie/cli
Issues similaires
-
fix(accounts): Balance Sheet and Profit and Loss crash on PostgreSQL due to MySQL force_indexOuverte
Difficulté 1/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
Discord webhook notifications fail with HTTP 403 (Cloudflare blocks default urllib User-Agent)Ouverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
tharje/spooler-v2#20 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Les mainteneurs répondent en général sous 1 jour
-
Bump version of azure-servicebusPeut-être pris @joostlek l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
home-assistant/core#186275 ·
Les mainteneurs répondent en général sous 1 jour
-
documentation
Difficulté 1/5 Moins d'une heure Accessibilité débutants 72/100