] if ; inline recursive
: read-unchunked ( quot: ( chunk -- ) -- )
- 8192 read dup [
+ 8192 read-partial dup [
[ swap call ] [ drop read-unchunked ] 2bi
] [ 2drop ] if ; inline recursive
PRIVATE>
-: success? ( code -- ? ) 200 = ;
+: success? ( code -- ? ) 200 299 between? ;
ERROR: download-failed response ;
: http-post ( post-data url -- response data )
<post-request> http-request ;
+
+: <put-request> ( data url -- request )
+ <post-request> "PUT" >>method ;
+
+: http-put ( data url -- response data )
+ <put-request> http-request ;