libgadu  1.12.1
Struktury danych | Funkcje
Tokeny
Usługi dodatkowe

Struktury danych

struct  gg_token
 Token autoryzacji niektórych operacji HTTP. Więcej...

Funkcje

struct gg_httpgg_token (int async)
 Pobiera token do autoryzacji operacji na katalogu publicznym.
int gg_token_watch_fd (struct gg_http *h)
 Funkcja wywoływana po zaobserwowaniu zmian na deskryptorze połączenia.
void gg_token_free (struct gg_http *h)
 Zwalnia zasoby po operacji pobierania tokenu.

Opis szczegółowy

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

struct gg_http *token;
FILE *f;

token = gg_token(0);

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");
    gg_token_free(token);
    exit(1);
}

fwrite(token->body, token->body_size, 1, plik);
fclose(plik);

gg_token_free(token);

Dokumentacja funkcji

struct gg_http* gg_token ( int  async) [read]

Pobiera token do autoryzacji operacji na katalogu publicznym.

Token jest niezbędny do tworzenia nowego i usuwania użytkownika, zmiany hasła itd.

Parametry:
asyncFlaga połączenia asynchronicznego
Zwraca:
Struktura gg_http lub NULL w przypadku błędu
int gg_token_watch_fd ( struct gg_http h)

Funkcja wywoływana po zaobserwowaniu zmian na deskryptorze połączenia.

Operacja będzie zakończona, gdy pole state będzie równe GG_STATE_DONE. Jeśli wystąpi błąd, state będzie równe GG_STATE_ERROR, a kod błędu znajdzie się w polu error.

Parametry:
hStruktura połączenia
Zwraca:
0 jeśli się powiodło, -1 w przypadku błędu
void gg_token_free ( struct gg_http h)

Zwalnia zasoby po operacji pobierania tokenu.

Parametry:
hStruktura połączenia
 All Struktury Danych Pliki Funkcje Zmienne Definicje typów Wyliczenia Wartości wyliczeń Definicje