Bagikan melalui


Kelas CHttpConnection

Mengelola koneksi Anda ke server HTTP.

Sintaks

class CHttpConnection : public CInternetConnection

Anggota

Konstruktor Publik

Nama Deskripsi
CHttpConnection::CHttpConnection CHttpConnection Membuat objek.

Metode Publik

Nama Deskripsi
CHttpConnection::OpenRequest Membuka permintaan HTTP.

Keterangan

HTTP adalah salah satu dari tiga protokol server Internet yang diterapkan oleh kelas MFC WinInet.

CHttpConnection Kelas berisi konstruktor dan satu fungsi anggota, OpenRequest, yang mengelola koneksi ke server dengan protokol HTTP.

Untuk berkomunikasi dengan server HTTP, Anda harus terlebih dahulu membuat instans CInternetSession, lalu membuat objek CHttpConnection . Anda tidak pernah membuat CHttpConnection objek secara langsung; melainkan, panggil CInternetSession::GetHttpConnection, yang membuat CHttpConnection objek dan mengembalikan pointer ke objek tersebut.

Untuk mempelajari selengkapnya tentang cara CHttpConnection kerja dengan kelas Internet MFC lainnya, lihat artikel Pemrograman Internet dengan WinInet. Untuk informasi selengkapnya tentang menyambungkan ke server menggunakan dua protokol Internet lain yang didukung, gopher dan FTP, lihat kelas CGopherConnection dan CFtpConnection.

Hierarki Warisan

CObject

CInternetConnection

CHttpConnection

Persyaratan

Header: afxinet.h

CHttpConnection::CHttpConnection

Fungsi anggota ini dipanggil untuk membuat CHttpConnection objek.

CHttpConnection(
    CInternetSession* pSession,
    HINTERNET hConnected,
    LPCTSTR pstrServer,
    DWORD_PTR dwContext);

CHttpConnection(
    CInternetSession* pSession,
    LPCTSTR pstrServer,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    DWORD_PTR dwContext = 1);

CHttpConnection(
    CInternetSession* pSession,
    LPCTSTR pstrServer,
    DWORD dwFlags,
    INTERNET_PORT nPort = INTERNET_INVALID_PORT_NUMBER,
    LPCTSTR pstrUserName = NULL,
    LPCTSTR pstrPassword = NULL,
    DWORD_PTR dwContext = 1);

Parameter

pSession
Penunjuk ke objek CInternetSession .

hConnected
Handel ke koneksi Internet.

pstrServer
Penunjuk ke string yang berisi nama server.

dwContext
Pengidentifikasi konteks untuk CInternetConnection objek. Untuk informasi selengkapnya tentang dwContext, lihat bagian Keterangan .

nPort
Nomor yang mengidentifikasi port Internet untuk sambungan ini.

pstrUserName
Penunjuk ke string null-terminated yang menentukan nama pengguna untuk masuk. Jika NULL, defaultnya adalah anonim.

pstrPassword
Penunjuk ke string null-terminated yang menentukan kata sandi yang akan digunakan untuk masuk. Jika pstrPassword dan pstrUserName adalah NULL, kata sandi anonim default adalah nama email pengguna. Jika pstrPassword adalah NULL atau string kosong, tetapi pstrUserName bukan NULL, kata sandi kosong digunakan. Tabel berikut ini menjelaskan perilaku untuk empat kemungkinan pengaturan pstrUserName dan pstrPassword:

pstrUserName pstrPassword Nama pengguna dikirim ke server FTP Kata sandi yang dikirim ke server FTP
NULL atau " " NULL atau " " "anonim" Nama email pengguna
Non-NULL String NULL atau " " pstrUserName " "
NULL Non-NULL String KESALAHAN KESALAHAN
Non-NULL String Non-NULL String pstrUserName pstrPassword

dwFlags
INTERNET_FLAG_* Kombinasi bendera apa pun. Lihat tabel di bagian Keterangan CHttpConnection ::OpenRequest untuk deskripsi nilai dwFlags .

Keterangan

Anda tidak pernah membuat secara CHttpConnection langsung. Sebaliknya, Anda membuat objek dengan memanggil CInternetSession::GetHttpConnection.

CHttpConnection::OpenRequest

Panggil fungsi anggota ini untuk membuka koneksi HTTP.

CHttpFile* OpenRequest(
    LPCTSTR pstrVerb,
    LPCTSTR pstrObjectName,
    LPCTSTR pstrReferer = NULL,
    DWORD_PTR dwContext = 1,
    LPCTSTR* ppstrAcceptTypes = NULL,
    LPCTSTR pstrVersion = NULL,
    DWORD dwFlags = INTERNET_FLAG_EXISTING_CONNECT);

CHttpFile* OpenRequest(
    int nVerb,
    LPCTSTR pstrObjectName,
    LPCTSTR pstrReferer = NULL,
    DWORD_PTR dwContext = 1,
    LPCTSTR* ppstrAcceptTypes = NULL,
    LPCTSTR pstrVersion = NULL,
    DWORD dwFlags = INTERNET_FLAG_EXISTING_CONNECT);

Parameter

pstrVerb
Penunjuk ke string yang berisi kata kerja untuk digunakan dalam permintaan. Jika NULL, "GET" digunakan.

pstrObjectName
Penunjuk ke string yang berisi objek target kata kerja yang ditentukan. String ini umumnya adalah nama file, modul yang dapat dieksekusi, atau penentu pencarian.

pstrReferer
Penunjuk ke string yang menentukan alamat (URL) dokumen tempat URL dalam permintaan (pstrObjectName) diperoleh. Jika NULL, tidak ada header HTTP yang ditentukan.

dwContext
Pengidentifikasi konteks untuk OpenRequest operasi. Untuk informasi selengkapnya tentang dwContext, lihat bagian Keterangan.

ppstrAcceptTypes
Penunjuk ke array penunjuk LPCTSTR yang dihentikan null ke string yang menunjukkan jenis konten yang diterima oleh klien. Jika ppstrAcceptTypes adalah NULL, server menafsirkan bahwa klien hanya menerima dokumen jenis "text/*" (yaitu, hanya dokumen teks dan bukan gambar atau file biner lainnya). Jenis konten setara dengan variabel CGI CONTENT_TYPE, yang mengidentifikasi jenis data untuk kueri yang telah melampirkan informasi, seperti HTTP POST dan PUT.

pstrVersion
Penunjuk ke string yang menentukan versi HTTP. Jika NULL, "HTTP/1.0" digunakan.

dwFlags
Kombinasi bendera INTERNET_ FLAG_*. Lihat bagian Keterangan untuk deskripsi kemungkinan nilai dwFlags .

nVerb
Angka yang terkait dengan jenis permintaan HTTP. Bisa jadi salah satu dari yang berikut:

Jenis permintaan HTTP Nilai nVerb
HTTP_VERB_POST 0
HTTP_VERB_GET 1
HTTP_VERB_HEAD 2
HTTP_VERB_PUT 3
HTTP_VERB_LINK 4
HTTP_VERB_DELETE 5
HTTP_VERB_UNLINK 6

Tampilkan Nilai

Penunjuk ke objek CHttpFile yang diminta.

Keterangan

dwFlags bisa menjadi salah satu hal berikut:

Bendera Internet Deskripsi
INTERNET_FLAG_RELOAD Memaksa pengunduhan file, objek, atau daftar direktori yang diminta dari server asal, bukan dari cache.
INTERNET_FLAG_DONT_CACHE Tidak menambahkan entitas yang dikembalikan ke cache.
INTERNET_FLAG_MAKE_PERSISTENT Menambahkan entitas yang dikembalikan ke cache sebagai entitas persisten. Ini berarti bahwa pembersihan cache standar, pemeriksaan konsistensi, atau pengumpulan sampah tidak dapat menghapus item ini dari cache.
INTERNET_FLAG_SECURE Menggunakan semantik transaksi yang aman. Ini diterjemahkan menggunakan SSL/PCT dan hanya bermakna dalam permintaan HTTP
INTERNET_FLAG_NO_AUTO_REDIRECT Digunakan hanya dengan HTTP, menentukan bahwa pengalihan tidak boleh ditangani secara otomatis di CHttpFile::SendRequest.

Ambil alih dwContext default untuk mengatur pengidentifikasi konteks ke nilai yang Anda pilih. Pengidentifikasi konteks dikaitkan dengan operasi spesifik objek yang CHttpConnection dibuat oleh objek CInternetSession ini. Nilai dikembalikan ke CInternetSession::OnStatusCallback untuk memberikan status pada operasi yang diidentifikasi. Lihat artikel Langkah Pertama Internet: WinInet untuk informasi selengkapnya tentang pengidentifikasi konteks.

Pengecualian dapat dilemparkan dengan fungsi ini.

Lihat juga

Kelas CInternetConnection
Bagan Hierarki
Kelas CInternetConnection
Kelas CHttpFile