http: host header should not include the port number

db4
Slava Pestov 2010-07-05 22:52:19 -04:00
parent 58b5c60886
commit a7dec01453
2 changed files with 3 additions and 8 deletions

View File

@ -21,12 +21,8 @@ ERROR: too-many-redirects ;
[ "HTTP/" write version>> write crlf ] [ "HTTP/" write version>> write crlf ]
tri ; tri ;
: url-host ( url -- string )
[ host>> ] [ port>> ] bi dup "http" protocol-port =
[ drop ] [ ":" swap number>string 3append ] if ;
: set-host-header ( request header -- request header ) : set-host-header ( request header -- request header )
over url>> url-host "host" pick set-at ; over url>> host>> "host" pick set-at ;
: set-cookie-header ( header cookies -- header ) : set-cookie-header ( header cookies -- header )
unparse-cookie "cookie" pick set-at ; unparse-cookie "cookie" pick set-at ;

View File

@ -75,9 +75,8 @@ SYMBOL: upload-limit
] when ; ] when ;
: extract-host ( request -- request ) : extract-host ( request -- request )
[ ] [ url>> ] [ "host" header parse-host ] tri [ ] [ url>> ] [ "host" header dup [ url-decode ] when ] tri
[ >>host ] [ >>port ] bi* >>host drop ;
drop ;
: extract-cookies ( request -- request ) : extract-cookies ( request -- request )
dup "cookie" header [ parse-cookie >>cookies ] when* ; dup "cookie" header [ parse-cookie >>cookies ] when* ;