Впервые в TCL и возникли проблемы с использованием команды ::rest::simple url query ?config? ?body?
- в частности, для работы базовой аутентификации c. Приведенный здесь пример (https://core.tcl-lang.org/tcllib/doc/tcllib-1-18/embedded/www/tcllib/files/modules/rest/rest.html#section4) выглядит следующим образом:
set url http://twitter.com/statuses/update.json
set query [list status $text]
set res [rest::simple $url $query {
method post
auth {basic user password}
format json
}]
Итак, моя попытка:
package require rest
package require json
set url http://0.0.0.0:5000/api/id
set response [rest::simple $url {
method get
auth {basic user password}
format json
}]
puts $response
Однако я продолжаю получать ошибку 401 когда я пытаюсь выполнить вышеуказанное для фиктивной конечной точки API для GET:
"GET /api/id?auth=basic%20user%20password&method=get&format=json HTTP/1.1" 401 -
, я могу сделать запрос скручивания для этой же конечной точки, используя basi c auth (также с Python), и если я отключаю аутентификацию basi c на конечной точке, то в TCL это прекрасно работает:
set url http://0.0.0.0:5000/api/id
set response [rest::simple $url {
method get
format json
}]
puts $response
Так что это как-то связано с учетными данными аутентификации basi c в модуле отдыха TCL.