Rename options→curlOptions, info→curlInfo
This commit is contained in:
parent
8c88497fdf
commit
e8047c4b0c
2 changed files with 29 additions and 30 deletions
50
curl.bqn
50
curl.bqn
|
@ -14,8 +14,8 @@
|
||||||
slistFreeAll,
|
slistFreeAll,
|
||||||
fopen,
|
fopen,
|
||||||
fclose,
|
fclose,
|
||||||
options,
|
curlOptions,
|
||||||
info
|
curlInfo
|
||||||
⟩←•Import"ffi.bqn"
|
⟩←•Import"ffi.bqn"
|
||||||
⟨RandID⟩←•Import"utils.bqn"
|
⟨RandID⟩←•Import"utils.bqn"
|
||||||
|
|
||||||
|
@ -30,21 +30,21 @@ headers 𝕊 url:
|
||||||
|
|
||||||
session←EasyInit⟨⟩
|
session←EasyInit⟨⟩
|
||||||
|
|
||||||
ruseragent←EasySetoptStr⟨session,options.useragent,"curl/bqn"∾@⟩
|
ruseragent←EasySetoptStr⟨session,curlOptions.useragent,"curl/bqn"∾@⟩
|
||||||
("Error setting user agent: "∾•Fmt ruseragent)!ruseragent=0
|
("Error setting user agent: "∾•Fmt ruseragent)!ruseragent=0
|
||||||
rurl←EasySetoptStr⟨session,options.url,url∾@⟩
|
rurl←EasySetoptStr⟨session,curlOptions.url,url∾@⟩
|
||||||
("Error setting URL: "∾•Fmt rurl)!rurl=0
|
("Error setting URL: "∾•Fmt rurl)!rurl=0
|
||||||
rfile←EasySetoptPtr⟨session,options.writedata,filePtr⟩
|
rfile←EasySetoptPtr⟨session,curlOptions.writedata,filePtr⟩
|
||||||
("Error setting file target: "∾•Fmt rfile)!rfile=0
|
("Error setting file target: "∾•Fmt rfile)!rfile=0
|
||||||
rheaderfile←EasySetoptPtr⟨session,options.headerdata,headerFilePtr⟩
|
rheaderfile←EasySetoptPtr⟨session,curlOptions.headerdata,headerFilePtr⟩
|
||||||
("Error setting header file target: "∾•Fmt rheaderfile)!rheaderfile=0
|
("Error setting header file target: "∾•Fmt rheaderfile)!rheaderfile=0
|
||||||
rredirect←EasySetoptLong⟨session,options.followlocation,1⟩
|
rredirect←EasySetoptLong⟨session,curlOptions.followlocation,1⟩
|
||||||
("Error setting redirect option: "∾•Fmt rredirect)!rredirect=0
|
("Error setting redirect option: "∾•Fmt rredirect)!rredirect=0
|
||||||
# EasySetoptLong⟨session,options.header,1⟩
|
# EasySetoptLong⟨session,curlOptions.header,1⟩
|
||||||
# EasySetoptLong⟨session,options.verbose,1⟩
|
# EasySetoptLong⟨session,curlOptions.verbose,1⟩
|
||||||
|
|
||||||
slist←(8↑0){SlistAppend⟨𝕩,𝕨∾@⟩}´headers
|
slist←(8↑0){SlistAppend⟨𝕩,𝕨∾@⟩}´headers
|
||||||
rheaders←EasySetoptPtr⟨session,options.httpHeader,slist⟩
|
rheaders←EasySetoptPtr⟨session,curlOptions.httpHeader,slist⟩
|
||||||
("Error setting headers: "∾•Fmt rheaders)!rheaders=0
|
("Error setting headers: "∾•Fmt rheaders)!rheaders=0
|
||||||
|
|
||||||
rperform←EasyPerform⟨session⟩
|
rperform←EasyPerform⟨session⟩
|
||||||
|
@ -52,10 +52,10 @@ headers 𝕊 url:
|
||||||
|
|
||||||
SlistFreeAll slist
|
SlistFreeAll slist
|
||||||
|
|
||||||
rcode‿⟨code⟩←EasyGetinfoLong⟨session,info.responseCode,⟨0⟩⟩
|
rcode‿⟨code⟩←EasyGetinfoLong⟨session,curlInfo.responseCode,⟨0⟩⟩
|
||||||
("Error retrieving response code: "∾•Fmt rcode)!rcode=0
|
("Error retrieving response code: "∾•Fmt rcode)!rcode=0
|
||||||
# ("Request failed with status code "∾•Fmt code)!2=⌊code÷100
|
# ("Request failed with status code "∾•Fmt code)!2=⌊code÷100
|
||||||
rtime‿⟨time⟩←EasyGetinfoDouble⟨session,info.totalTime,⟨0.0⟩⟩
|
rtime‿⟨time⟩←EasyGetinfoDouble⟨session,curlInfo.totalTime,⟨0.0⟩⟩
|
||||||
("Error retrieving request time: "∾•Fmt rtime)!rtime=0
|
("Error retrieving request time: "∾•Fmt rtime)!rtime=0
|
||||||
|
|
||||||
Fclose filePtr
|
Fclose filePtr
|
||||||
|
@ -85,27 +85,27 @@ headers 𝕊 url‿data:
|
||||||
|
|
||||||
session←EasyInit⟨⟩
|
session←EasyInit⟨⟩
|
||||||
|
|
||||||
ruseragent←EasySetoptStr⟨session,options.useragent,"curl/bqn"∾@⟩
|
ruseragent←EasySetoptStr⟨session,curlOptions.useragent,"curl/bqn"∾@⟩
|
||||||
("Error setting user agent: "∾•Fmt ruseragent)!ruseragent=0
|
("Error setting user agent: "∾•Fmt ruseragent)!ruseragent=0
|
||||||
rurl←EasySetoptStr⟨session,options.url,url∾@⟩
|
rurl←EasySetoptStr⟨session,curlOptions.url,url∾@⟩
|
||||||
("Error setting URL: "∾•Fmt rurl)!rurl=0
|
("Error setting URL: "∾•Fmt rurl)!rurl=0
|
||||||
rfile←EasySetoptPtr⟨session,options.writedata,filePtr⟩
|
rfile←EasySetoptPtr⟨session,curlOptions.writedata,filePtr⟩
|
||||||
("Error setting file target: "∾•Fmt rfile)!rfile=0
|
("Error setting file target: "∾•Fmt rfile)!rfile=0
|
||||||
rheaderfile←EasySetoptPtr⟨session,options.headerdata,headerFilePtr⟩
|
rheaderfile←EasySetoptPtr⟨session,curlOptions.headerdata,headerFilePtr⟩
|
||||||
("Error setting header file target: "∾•Fmt rheaderfile)!rheaderfile=0
|
("Error setting header file target: "∾•Fmt rheaderfile)!rheaderfile=0
|
||||||
rredirect←EasySetoptLong⟨session,options.followlocation,1⟩
|
rredirect←EasySetoptLong⟨session,curlOptions.followlocation,1⟩
|
||||||
("Error setting redirect option: "∾•Fmt rredirect)!rredirect=0
|
("Error setting redirect option: "∾•Fmt rredirect)!rredirect=0
|
||||||
rpost←EasySetoptLong⟨session,options.post,1⟩
|
rpost←EasySetoptLong⟨session,curlOptions.post,1⟩
|
||||||
("Error setting up POST request: "∾•Fmt rpost)!rpost=0
|
("Error setting up POST request: "∾•Fmt rpost)!rpost=0
|
||||||
rpostfields←EasySetoptStr⟨session,options.postfields,data⟩
|
rpostfields←EasySetoptStr⟨session,curlOptions.postfields,data⟩
|
||||||
("Error setting POST data: "∾•Fmt rpostfields)!rpostfields=0
|
("Error setting POST data: "∾•Fmt rpostfields)!rpostfields=0
|
||||||
rpostfieldsize←EasySetoptLong⟨session,options.postfieldsize,≠data⟩
|
rpostfieldsize←EasySetoptLong⟨session,curlOptions.postfieldsize,≠data⟩
|
||||||
("Error setting POST data size: "∾•Fmt rpostfieldsize)!rpostfieldsize=0
|
("Error setting POST data size: "∾•Fmt rpostfieldsize)!rpostfieldsize=0
|
||||||
# EasySetoptLong⟨session,options.header,1⟩
|
# EasySetoptLong⟨session,curlOptions.header,1⟩
|
||||||
# EasySetoptLong⟨session,options.verbose,1⟩
|
# EasySetoptLong⟨session,curlOptions.verbose,1⟩
|
||||||
|
|
||||||
slist←(8↑0){SlistAppend⟨𝕩,𝕨∾@⟩}´headers
|
slist←(8↑0){SlistAppend⟨𝕩,𝕨∾@⟩}´headers
|
||||||
rheaders←EasySetoptPtr⟨session,options.httpHeader,slist⟩
|
rheaders←EasySetoptPtr⟨session,curlOptions.httpHeader,slist⟩
|
||||||
("Error setting headers: "∾•Fmt rheaders)!rheaders=0
|
("Error setting headers: "∾•Fmt rheaders)!rheaders=0
|
||||||
|
|
||||||
rperform←EasyPerform⟨session⟩
|
rperform←EasyPerform⟨session⟩
|
||||||
|
@ -113,10 +113,10 @@ headers 𝕊 url‿data:
|
||||||
|
|
||||||
SlistFreeAll slist
|
SlistFreeAll slist
|
||||||
|
|
||||||
rcode‿⟨code⟩←EasyGetinfoLong⟨session,info.responseCode,⟨0⟩⟩
|
rcode‿⟨code⟩←EasyGetinfoLong⟨session,curlInfo.responseCode,⟨0⟩⟩
|
||||||
("Error retrieving response code: "∾•Fmt rcode)!rcode=0
|
("Error retrieving response code: "∾•Fmt rcode)!rcode=0
|
||||||
# ("Request failed with status code "∾•Fmt code)!2=⌊code÷100
|
# ("Request failed with status code "∾•Fmt code)!2=⌊code÷100
|
||||||
rtime‿⟨time⟩←EasyGetinfoDouble⟨session,info.totalTime,⟨0.0⟩⟩
|
rtime‿⟨time⟩←EasyGetinfoDouble⟨session,curlInfo.totalTime,⟨0.0⟩⟩
|
||||||
("Error retrieving request time: "∾•Fmt rtime)!rtime=0
|
("Error retrieving request time: "∾•Fmt rtime)!rtime=0
|
||||||
|
|
||||||
Fclose filePtr
|
Fclose filePtr
|
||||||
|
|
9
ffi.bqn
9
ffi.bqn
|
@ -12,8 +12,8 @@
|
||||||
slistFreeAll,
|
slistFreeAll,
|
||||||
fopen,
|
fopen,
|
||||||
fclose,
|
fclose,
|
||||||
options,
|
curlOptions,
|
||||||
info
|
curlInfo
|
||||||
⟩⇐
|
⟩⇐
|
||||||
|
|
||||||
⟨Hex2Num⟩←•Import"utils.bqn"
|
⟨Hex2Num⟩←•Import"utils.bqn"
|
||||||
|
@ -45,7 +45,7 @@ slistFreeAll←CurlFFI ""‿"curl_slist_free_all"‿">*:i8"
|
||||||
fopen←@•FFI "*:i8"‿"fopen"‿"*u8:c8"‿"*u8:c8"
|
fopen←@•FFI "*:i8"‿"fopen"‿"*u8:c8"‿"*u8:c8"
|
||||||
fclose←@•FFI ""‿"fclose"‿">*:i8"
|
fclose←@•FFI ""‿"fclose"‿">*:i8"
|
||||||
|
|
||||||
options←{
|
curlOptions←{
|
||||||
strOffset←10000
|
strOffset←10000
|
||||||
slistOffset←10000
|
slistOffset←10000
|
||||||
ptrOffset←10000
|
ptrOffset←10000
|
||||||
|
@ -77,8 +77,7 @@ options←{
|
||||||
httpHeader⇐slistOffset+23 # HTTP headers as a list of strings
|
httpHeader⇐slistOffset+23 # HTTP headers as a list of strings
|
||||||
}
|
}
|
||||||
|
|
||||||
|
curlInfo←{
|
||||||
info←{
|
|
||||||
strOffset←Hex2Num"100000"
|
strOffset←Hex2Num"100000"
|
||||||
longOffset←Hex2Num"200000"
|
longOffset←Hex2Num"200000"
|
||||||
doubleOffset←Hex2Num"300000"
|
doubleOffset←Hex2Num"300000"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue