gpt4 book ai didi

http - 在 tcl 8.0 中使用 http post 方法获取 url

转载 作者:可可西里 更新时间:2023-11-01 16:28:48 24 4
gpt4 key购买 nike

我正在尝试使用 tcl 8.0 中的 post 方法获取一些 url。

它不打印任何输出。

这是我的代码块。

foreach sKey [array names aQuery] {                                        
set sValue $aQuery($sKey)
append sQueryString "[::http::formatQuery $sKey $sValue]&"
}

set sQueryString [string trim $sQueryString "&"]

set sToken [::http::geturl $sUrl -query $sQueryString -channel stdout]

::http::wait $sToken

upvar #0 $sToken state

foreach sKey [array names state] {
puts "$sKey $state($sKey)"
}

最佳答案

已经升级了。你到底为什么要使用上个千年发布的版本。

http::formatQuery 过程将一个或多个键值对作为参数,以便该部分可以更好地呈现如下。如果有疑问,最好避免使用 -channel 选项并自己检查状态。所以像这样:

set query [eval ::http::formatQuery [array get aQuery]]
set tok [http::geturl $sUrl -query $query -timeout 10000]
http::wait $tok
if {![string compare [http::status] "ok"]} {
puts [http::data $tok]
} else {
puts stderr [http::error $tok]
}
http::cleanup $tok

请注意,在较新版本的 tcl 中,您可以使用 [http::status] eq "ok"[string equal [http::status] "ok"]。不要忘记清理 http token 。如果您在 GUI 程序中执行此操作,请使用 -command 选项并在回调中完成所有工作,这样您就不会在执行 http::wait 时卡住 UI。

关于http - 在 tcl 8.0 中使用 http post 方法获取 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12155899/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com