Bagikan melalui


Fungsi InternetGetCookieA (wininet.h)

Mengambil cookie untuk URL yang ditentukan.

Sintaks

BOOL InternetGetCookieA(
  [in]      LPCSTR  lpszUrl,
  [in]      LPCSTR  lpszCookieName,
  [out]     LPSTR   lpszCookieData,
  [in, out] LPDWORD lpdwSize
);

Parameter

[in] lpszUrl

Penunjuk ke string yang dihentikan null yang menentukan URL tempat cookie akan diambil.

[in] lpszCookieName

Tidak diterapkan.

[out] lpszCookieData

Penunjuk ke buffer yang menerima data cookie. Parameter ini bisa NULL.

[in, out] lpdwSize

Pointer ke variabel yang menentukan ukuran buffer parameter lpszCookieData , dalam TCHAR. Jika fungsi berhasil, buffer menerima jumlah data yang disalin ke buffer lpszCookieData . Jika lpszCookieData adalah NULL, parameter ini menerima nilai yang menentukan ukuran buffer yang diperlukan untuk menyalin semua data cookie, yang dinyatakan sebagai jumlah byte.

Nilai kembali

Jika fungsi berhasil, fungsi mengembalikan TRUE.

Jika fungsi gagal, fungsi akan mengembalikan FALSE. Untuk mendapatkan data kesalahan yang diperluas, hubungi GetLastError.

Nilai kesalahan berikut berlaku untuk InternetGetCookie.

Menampilkan kode Deskripsi
ERROR_NO_MORE_ITEMS
Tidak ada cookie untuk URL yang ditentukan dan semua orang tuanya.
ERROR_INSUFFICIENT_BUFFER
Nilai yang diteruskan dalam lpdwSize tidak cukup untuk menyalin semua data cookie. Nilai yang dikembalikan dalam lpdwSize adalah ukuran buffer yang diperlukan untuk mendapatkan semua data.
ERROR_INVALID_PARAMETER
Satu atau beberapa parameter tidak valid.

Parameter lpszUrl adalah NULL.

Keterangan

InternetGetCookie tidak memerlukan panggilan ke InternetBuka. InternetGetCookie memeriksa direktori windows\cookies untuk cookie persisten yang memiliki tanggal kedaluwarsa yang ditetapkan di masa mendatang. InternetGetCookie juga mencari memori untuk cookie sesi apa pun, yaitu cookie yang tidak memiliki tanggal kedaluwarsa yang dibuat dalam proses yang sama oleh InternetSetCookie, karena cookie ini tidak ditulis ke file apa pun. Aturan untuk membuat file cookie bersifat internal untuk sistem dan dapat berubah di masa mendatang.

Seperti yang disebutkan dalam Cookie HTTP, InternetGetCookie tidak mengembalikan cookie yang ditandai server sebagai tidak dapat ditulis dengan atribut "HttpOnly" di header Set-Cookie.

Seperti semua aspek lain dari Api WinINet, fungsi ini tidak dapat dipanggil dengan aman dari dalam DllMain atau konstruktor dan destruktor objek global.

Catatan WinINet tidak mendukung implementasi server. Selain itu, itu tidak boleh digunakan dari layanan. Untuk implementasi atau layanan server, gunakan Microsoft Windows HTTP Services (WinHTTP).
 

Catatan

Header wininet.h mendefinisikan InternetGetCookie sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header wininet.h
Pustaka Wininet.lib
DLL Wininet.dll

Lihat juga

Cookie HTTP

InternetGetCookieEx

InternetSetCookie

InternetSetCookieEx

Mengelola Cookie

Fungsi WinINet