Недавно я начал писать программу на C ++ для GET и POST данных из / в tdameritrade через их api. Я новичок в cURL. tdameritrade опубликовал несколько руководств для своих API. Они предоставляют простые команды, которые можно запускать с терминала или через Python. например curl -X GET --header "Авторизация: код доступа к предъявителю" " https://api.tdameritrade.com/v1/marketdata/GOOGL/pricehistory?apikey=userkey&periodType=day&period=2&frequencyType=minute&frequencyType=minute&frequency 5 ".
В этом случае эта команда вернет мне историю цен акций (GOOGL). Я пытаюсь реализовать ту же команду, используя библиотеку libcurl в ubuntu. Вот снимок моего кода:
#include "curl/curl.h"
int main(){
const std::string myheader("Authorization: Bearer accesscode");
const std::string url("https://api.tdameritrade.com/v1/marketdata/GOOGL/pricehistory?apikey=userkey&periodType=day&period=2&frequencyType=minute&frequency=5");
CURL* curl = curl_easy_init();
curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
.
.
.
curl_easy_perform(curl);
curl_easy_getinfo(curl, CURLINFO_RESPONSE_CODE, &httpCode);
curl_easy_cleanup(curl);
}
Но я не знаю, как реализовать часть --header в параметрах curl. Пожалуйста посоветуй. Спасибо!!!
для добавления заголовка необходимо использовать
struct curl_slist *headers=NULL;
headers = curl_slist_append(headers, "Authorization: Bearer accesscode");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
Ссылка: https://curl.haxx.se/libcurl/c/httpcustomheader.html