]> gitweb.factorcode.org Git - factor.git/commitdiff
http.client: PATCH should usually take a body
authorDoug Coleman <doug.coleman@gmail.com>
Sat, 4 Mar 2023 03:44:14 +0000 (21:44 -0600)
committerDoug Coleman <doug.coleman@gmail.com>
Sat, 4 Mar 2023 03:44:14 +0000 (21:44 -0600)
basis/http/client/client.factor
extra/json/http/http.factor

index dfcf65bb636d6603778e869bf07e91c0944b37cd..1e577dad2af30ddc60561dd2a8a29de131906c88 100644 (file)
@@ -334,13 +334,14 @@ PRIVATE>
 : http-options* ( url -- response data )
     <options-request> http-request* ;
 
-: <patch-request> ( url -- request )
-    "PATCH" <client-request> ;
+: <patch-request> ( patch-data url -- request )
+    "PATCH" <client-request>
+        swap >>post-data ;
 
-: http-patch ( url -- response data )
+: http-patch ( patch-data url -- response data )
     <patch-request> http-request ;
 
-: http-patch* ( url -- response data )
+: http-patch* ( patch-data url -- response data )
     <patch-request> http-request* ;
 
 : <trace-request> ( url -- request )
index 2831c60a1e2f4646bc59a6abd8281583bcb04d46..55a0d6d1b1b40954ddc782cd41671d74a7ae4446 100644 (file)
@@ -36,5 +36,6 @@ IN: json.http
 : http-trace-json ( url -- response json )
     "TRACE" <json-request> http-request json> ;
 
-: http-patch-json ( url -- response json )
-    "PATCH" <json-request> http-request json> ;
+: http-patch-json ( assoc/json-string url -- response json )
+    [ <json-post-data> ] dip "PATCH" <json-request>
+      swap >>post-data http-request json> ;