QUERY_STRING should not contain a leading question mark (?)

Aperta
#229 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
c
Ambito
backend

Direzione di ricerca

The issue defines the expected QUERY_STRING value and cites the Rook specification and RFC 3875. Locate the httpuv request-handling entry point that derives QUERY_STRING, then verify that a URL such as ?foo=bar produces foo=bar without the leading question mark.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

As per the title httpuv produces QUERY_STRING values containing the leading question mark of the form ?foo=bar where it should be foo=bar.

According to the documentation httpuv follows the Rook specification which states that "QUERY_STRING: The portion of the request URL that follows the ?, if any. [...]" [1]

Rook itself is modeled after CGI which also states that the question mark is not part of the query string and provides the following BNF syntax [2]:

   script-URI = <scheme> "://" <server-name> ":" <server-port>
                   <script-path> <extra-path> "?" <query-string>

The current behavior of httpuv is surprising and not consistent with established standards.

[1] https://github.com/jeffreyhorner/Rook
[2] https://tools.ietf.org/html/rfc3875#section-3.3

Lingua principale
C
Stelle
252
Fork
87
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di rstudio/httpuv

Tutte le issue di rstudio/httpuv

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.