W celu zarejestrowania konta lub zmiany hasła, należy pobrać z serwera token. Przy asynchronicznej operacji, po wywołaniu funkcji gg_token() wynikową strukturę gg_http należy traktować tak jak każde połączenie HTTP. Po zakończeniu operacji asynchronicznej (state równe GG_STATE_DONE) lub wyjściu z funkcji gg_token() w operacji synchronicznej, w polu data struktury będzie znajdował się wskaźnik na strukturą gg_token zawierającą informacje o tokenie. W polu body struktury gg_http znajdzie się obrazek tokenu o rozmiarze body_size. Aplikacja powinna wyświetlić token użytkownikowi w celu odczytania i przekazania treści, która następnie zostana przekazana do odpowiedniej funkcji wywołania usługi dodatkowej.
Przykład pobierania tokenu
FILE *f;
if (!token) {
błąd("Błąd pobierania tokenu");
exit(1);
}
plik = fopen(((
struct gg_token *) token->
data)->tokenid,
"w");
if (!plik) {
błąd("Błąd otwarcia pliku");
exit(1);
}
fclose(plik);
struct gg_http * gg_token(int async)
Pobiera token do autoryzacji operacji na katalogu publicznym.
Definicja pubdir.c:686
void gg_token_free(struct gg_http *h)
Zwalnia zasoby po operacji pobierania tokenu.
Definicja pubdir.c:868
Połączenie HTTP.
Definicja libgadu.h:358
char * body
Odebrana strona.
Definicja libgadu.h:368
void * data
Dane prywatne usługi HTTP.
Definicja libgadu.h:371
unsigned int body_size
Rozmiar strony.
Definicja libgadu.h:369
Token autoryzacji niektórych operacji HTTP.
Definicja libgadu.h:1496