Cookie module issues
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia esaminando il modulo hackney_cookie e l’entry point hackney:cookies(Headers), incluso il comportamento affrontato da PR #193. Confronta il parser e il builder con RFC6265, quindi esamina le diverse rappresentazioni dei cookie utilizzate nel progetto. Il lavoro è completo quando il parsing di Set-Cookie e la costruzione di Cookie sono corrette, oltre ad aver concordato una rappresentazione coerente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
It seems that cookie parser in hackney_cookie uses 'Cookie' parser to parse 'Set-Cookie' header and 'Set-Cookie' builder to build 'Cookie' header. Also code seems to be outdated as it tries to parse comma as valid separator, that not the case in last RFC6265.
As one particular problem that I'm run into is parser failing to proceed set-cookie with Expires attribute. If you try to request https://ya.ru it sets yandexuid cookie and removes S cookie (with Expires in past), but hackney:cookie silently ignores this:
> {ok, Status, Headers, Client} = hackney:request(get, "https://ya.ru", [], <<>>, []).
...
> Headers.
[{<<"Server">>,<<"nginx">>},
{<<"Date">>,<<"Fri, 12 Jun 2015 11:21:05 GMT">>},
{<<"Content-Type">>,<<"text/html; charset=UTF-8">>},
{<<"Content-Length">>,<<"9627">>},
{<<"Connection">>,<<"close">>},
{<<"Cache-Control">>,
<<"no-cache,no-store,max-age=0,must-revalidate">>},
{<<"Expires">>,<<"Fri, 12 Jun 2015 11:21:05 GMT">>},
{<<"Last-Modified">>,<<"Fri, 12 Jun 2015 11:21:05 GMT">>},
{<<"P3P">>,
<<"policyref=\"/w3c/p3p.xml\", CP=\"NON DSP ADM DEV PSD IVDo OUR IND STP PHY P"...>>},
{<<"Set-Cookie">>,
<<"S=; Expires=Tue, 14-Jun-2005 11:21:05 GMT; Path=/">>},
{<<"Set-Cookie">>,
<<"yandexuid=6091834691434108065; Expires=Mon, 09-Jun-2025 11:21:05"...>>},
{<<"X-Frame-Options">>,<<"DENY">>}]
> hackney:cookies(Headers).
[]
This particular problem addressed in PR #193.
But I think cookie module need more attention to implement proper 'Set-Cookie' parser and 'Cookie' builder with respect to RFC6265.
Another issue is that different cookies representations are used across project like {Name, Value}, {Name, [{Name,Value}|Attrs]}, {Name, Value, Attrs}. This adds complexity to lib usage and can be source of errors, maybe it make sense to go with some unified representation based on record or map.
- Lingua principale
- Erlang
- Stelle
- 1.4k
- Fork
- 458
- Merge medio
- 11h 32m
- PR unite (30g)
- 47
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di benoitc/hackney
-
Support Certifi 2.19.xAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 1 giorno
-
keepalive timer also closes a freshly dialed pooled connection during the HTTP/1.1 TLS upgradeAperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 58/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
I maintainer di solito rispondono entro 1 giorno
-
Upgrading to 4.x strategyAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
benoitc/hackney#907 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di benoitc/hackney
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Natvs/Nt.Automaton#33 ·
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
volcano-sh/volcano#6322 ·
I maintainer di solito rispondono entro 1 giorno
-
claude
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
sprain/sprainocchio#38 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
peach-mitao/peach#693 ·
I maintainer di solito rispondono entro 1 giorno