[英]Alpaca Traders API Unable to Connect with httplib
我正在嘗試為 Alpaca Traders API 使用 C++ 包裝器,以便在此處找到:
https://github.com/marpaia/alpaca-trade-api-cpp#client-instantiation
但是,我什至無法連接到我的模擬交易賬戶。
以下是獲取 Alpaca 帳戶的包裝器代碼:
httplib::Headers headers(const Environment& environment) {
return {
{"APCA-API-KEY-ID", environment.getAPIKeyID()},
{"APCA-API-SECRET-KEY", environment.getAPISecretKey()},
};
}
std::pair<Status, Account> Client::getAccount() const {
Account account;
httplib::SSLClient client(environment_.getAPIBaseURL());
auto resp = client.Get("/v2/account", headers(environment_));
if (!resp) {
return std::make_pair(Status(1, "Call to /v2/account returned an empty response"), account);
}
}
問題是我收到一個無法連接的錯誤:
Error: resp.error(): Connection (2)
我檢查了環境,解析正確,我什至嘗試了下面的 curl 命令,它能夠得到 http 頁面。
curl -X GET -H "APCA-API-KEY-ID: {YOUR_API_KEY_ID}"
-H "APCA-API-SECRET-KEY: {YOUR_API_SECRET_KEY}"
https://paper-api.alpaca.markets/v2/account
所以我的機器可以找到並獲取頁面,因此它一定是代碼中的某些錯誤。 任何幫助,將不勝感激。
我發現了問題。 查看cpp-httplib github上的文檔后,SSLClient 在 URL 的開頭沒有https://
並導致我出現問題。
所以你要:
httplib::SSLClient client("paper-api.alpaca.markets");
並不是:
httplib::SSLClient client("https://paper-api.alpaca.markets");
第二個連接不上。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.