Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Query parameter values are truncated at a second equals sign

Abierto Apto para principiantes
#2,810 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 8 días

@xu91102 ya está trabajando en esto.

Desde el 26/9/2026.

  • #2811 de @xu91102 — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
88/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
javascript
Área
frontend, web-dev

Línea de trabajo

Comienza con src/core/router/util.js y la suite existente de utilidades de router de Jest, y después ejecuta la reproducción reportada de parseQuery. Verifica que, al decodificar, solo el primer signo igual separe un parámetro, mientras que la conversión de más a espacio, los valores vacíos y los parámetros sin valor permanezcan sin cambios; la prueba de regresión debería pasar conservando los signos igual incrustados.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Bug Report

Current behavior

Query parameter values are truncated at the second equals sign. On develop f34374b7423340e5ddec81c8ff565c26cc056fb5, parseQuery('?id=a=b=c&other=ok') returns {id: 'a', other: 'ok'} instead of preserving a=b=c.

The same parser is used by both hash and HTML5 history, so route queries exposed to plugins are affected. Values containing a literal equals sign, including padded encoded data, lose information.

Reproduction

From the source checkout:

import { parseQuery } from './src/core/router/util.js';
console.log(parseQuery('?id=a=b=c&other=ok'));
// { id: 'a', other: 'ok' }
Expected behavior

Only the first equals sign separates the parameter name from its value. Remaining equals signs should stay in the value. Existing decoding, plus-to-space conversion, empty values and valueless parameters should retain their behavior.

Environment

Docsify 5.0.0 develop source, Node.js on macOS. Reproduced directly and with a failing Jest regression in the existing router utility suite.

Lenguaje dominante
JavaScript
Estrellas
31.5k
Forks
5.8k
Merge medio
7 d 18 h
PR fusionados (30 d)
9

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de docsifyjs/docsify

Todos los issues de docsifyjs/docsify

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.