Próbuję połączyć się z aplikacją Google api.
To działa dobrze w moim terminalu, tam robię:
curl https://www.googleapis.com/tasks/v1/users/@me/lists --header "Authorization: Bearer myAccessCode"
.
To działa dobrze, ale teraz chcę zrobić to w programie c.
Do tego mam:
Tworzenie protokołu https za pomocą libcurl
CURL *curl;
char *header = "Authorization: Bearer myAccessCode";
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, header);
curl = curl_easy_init();
char *response = NULL;
curl_easy_setopt(curl, CURLOPT_URL, "https://www.googleapis.com/tasks/v1/users/@me/lists");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_HTTPGET, 1);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, httpsCallback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
curl_easy_perform(curl);
curl_easy_cleanup(curl);
Ale tutaj ja tylko dostaję komunikat, że wymagane jest logowanie. Nie mam pojęcia, co robię źle, czy jest ktoś, kto widzi moją porażkę?
Właśnie uświadomiłem sobie, że zrobiłem: 'curl_slist_append (nagłówki, nagłówek);'
zamiast: 'nagłówki = curl_slist_append (nagłówki, nagłówek); '
Tak więc nagłówki zawsze miały wartość NULL, a ja otrzymałem żądanie pobierania bez nagłówka.
(Edytowałem to w moim pytaniu powyżej, więc kod działa, jeśli ktoś ma podobny problem) – EarlOfEgo
Pytanie jest więc już rozwiązane? –
tak, ale moje punkty reputacji zmusiły mnie do czekania 10 godzin na odpowiedź na moje własne pytanie :-) Więc zrobię to teraz. – EarlOfEgo