TagniFi的HTTPS Basic Authentication 在 Qt 中失败



我正在尝试使用基本的HTTPS身份验证从TagniFi检索数据,但无法完成请求。根据 TagniFi 文档,身份验证密钥应该作为查询 URL 中的用户名传递,忽略密码。所以我尝试了以下内容,但它们没有按预期工作;

省略 HTTPS 基本身份验证格式
的密码和分号 即
https://<username>:<password>@<website URL> "https://<my_authentication_key>@api.tagnifi.com/fundamentals?company=aapl&tag=revenue&period_type=quarter&fiscal_year=2014&fiscal_quarter=3"

我也用分号尝试了以下内容 "https://<my_authentication_key>:@api.tagnifi.com/fundamentals?company=aapl&tag=revenue&period_type=quarter&fiscal_year=2014&fiscal_quarter=3"

TagniFi文档示例说,URL应如下所示,具有基本身份验证;

https://api.tagnifi.com/fundamentals?company=aapl&statement=income_statement&period_type=quarter&fiscal_year=2014&fiscal_quarter=3

我在Qt中得到的警告如下;

`qt.network.ssl: QSslSocket: cannot resolve SSL_set_psk_client_callback
   qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_client_method
   qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_client_method
   qt.network.ssl: QSslSocket: cannot resolve TLSv1_1_server_method
   qt.network.ssl: QSslSocket: cannot resolve TLSv1_2_server_method
   qt.network.ssl: QSslSocket: cannot resolve SSL_select_next_proto
   qt.network.ssl: QSslSocket: cannot resolve SSL_CTX_set_next_proto_select_cb
   qt.network.ssl: QSslSocket: cannot resolve SSL_get0_next_proto_negotiated
   qt.network.ssl: QSslSocket: cannot call unresolved function        SSL_get0_next_proto_negotiated`

我做错了什么?请指教。

这不是基本身份验证问题。QT 库需要使用 OpenSSL 支持进行编译。

以下是两个有用的 SO 答案:

1.( 在Qt C++中使用OpenSSL

2.( 未使用 SSL 时出现 QSslSocket 错误

最新更新