Как реализовать curl --header в C ++ (специально для tdameritrade) [closed]

Недавно я начал писать программу на 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. Пожалуйста посоветуй. Спасибо!!!

-1
задан 6 March 2020 в 05:29

1 ответ

для добавления заголовка необходимо использовать

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

0
ответ дан 17 March 2020 в 00:07

Другие вопросы по тегам:

Похожие вопросы: