Aracılığıyla paylaş


CHttpConnection Sınıfı

BIR HTTP sunucusuna bağlantınızı yönetir.

Sözdizimi

class CHttpConnection : public CInternetConnection

Üyeler

Ortak Oluşturucular

Veri Akışı Adı Açıklama
CHttpConnection::CHttpConnection Bir CHttpConnection nesnesi oluşturur.

Genel Yöntemler

Veri Akışı Adı Açıklama
CHttpConnection::OpenRequest Bir HTTP isteği açar.

Açıklamalar

HTTP, MFC WinInet sınıfları tarafından uygulanan üç İnternet sunucusu protokolünden biridir.

sınıfıCHttpConnection, HTTP protokolüne sahip bir sunucuya bağlantıları yöneten bir oluşturucu ve openRequest adlı bir üye işlevi içerir.

BIR HTTP sunucusuyla iletişim kurmak için önce bir CInternetSession örneği oluşturmanız ve ardından bir CHttpConnection nesnesi oluşturmanız gerekir. Hiçbir zaman doğrudan nesne CHttpConnection oluşturmazsınız; bunun yerine CInternetSession::GetHttpConnection çağrısı yapın; bu da nesneyi oluşturur CHttpConnection ve buna bir işaretçi döndürür.

Diğer MFC İnternet sınıfları ile nasıl CHttpConnection çalıştığı hakkında daha fazla bilgi edinmek için WinInet ile İnternet Programlama makalesine bakın. Gopher ve FTP olmak üzere desteklenen diğer iki İnternet protokollerini kullanarak sunuculara bağlanma hakkında daha fazla bilgi için bkz. CGopherConnection ve CFtpConnection sınıfları.

Devralma Hiyerarşisi

CObject

CInternetConnection

CHttpConnection

Gereksinimler

Üst bilgi: afxinet.h

CHttpConnection::CHttpConnection

Bu üye işlevi bir CHttpConnection nesne oluşturmak için çağrılır.

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);

Parametreler

pSession
CInternetSession nesnesinin işaretçisi.

hConnected
İnternet bağlantısının tanıtıcısı.

pstrServer
Sunucu adını içeren bir dize işaretçisi.

dwContext
Nesnenin bağlam tanımlayıcısı CInternetConnection . dwContext hakkında daha fazla bilgi için Açıklamalar bölümüne bakın.

nPort
Bu bağlantı için İnternet bağlantı noktasını tanımlayan sayı.

pstrUserName
Oturum açmak için kullanıcının adını belirten null ile sonlandırılan bir dizenin işaretçisi. NULL ise varsayılan değer anonimdir.

pstrPassword
Oturum açmak için kullanılacak parolayı belirten null ile sonlandırılan bir dize işaretçisi. Hem pstrPassword hem de pstrUserName NULL ise, varsayılan anonim parola kullanıcının e-posta adıdır. pstrPassword NULL veya boş bir dizeyse, ancak pstrUserName NULL değilse, boş bir parola kullanılır. Aşağıdaki tabloda, pstrUserName ve pstrPassword'un dört olası ayarının davranışı açıklanmaktadır:

pstrUserName pstrPassword FTP sunucusuna gönderilen kullanıcı adı FTP sunucusuna gönderilen parola
NULL veya " " NULL veya " " "anonim" Kullanıcının e-posta adı
NULL Olmayan Dize NULL veya " " pstrUserName " "
NULL NULL Olmayan Dize HATA HATA
NULL Olmayan Dize NULL Olmayan Dize pstrUserName pstrPassword

dwFlags
Bayrakların herhangi bir INTERNET_FLAG_* bileşimi. dwFlags değerlerinin açıklaması için CHttpConnection::OpenRequest öğesinin Açıklamalar bölümündeki tabloya bakın.

Açıklamalar

Hiçbir zaman doğrudan bir CHttpConnection oluşturmazsınız. Bunun yerine, CInternetSession::GetHttpConnection çağrısı yaparak bir nesne oluşturursunuz.

CHttpConnection::OpenRequest

HTTP bağlantısı açmak için bu üye işlevini çağır.

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);

Parametreler

pstrVerb
İstekte kullanılacak fiili içeren bir dize işaretçisi. NULL ise, "GET" kullanılır.

pstrObjectName
Belirtilen fiilin hedef nesnesini içeren bir dize işaretçisi. Bu dize genellikle bir dosya adı, yürütülebilir modül veya arama tanımlayıcısıdır.

pstrReferer
İstekteki (pstrObjectName) URL'nin alındığı belgenin adresini (URL) belirten bir dize işaretçisi. NULL ise, HIÇBIR HTTP üst bilgisi belirtilmez.

dwContext
İşlemin bağlam tanımlayıcısı OpenRequest . dwContext hakkında daha fazla bilgi için Açıklamalar bölümüne bakın.

ppstrAcceptTypes
İstemci tarafından kabul edilen içerik türlerini gösteren dizelere yönelik null olarak sonlandırılan BIR LPCTSTR işaretçi dizisi işaretçisi. ppstrAcceptTypes NULL ise, sunucular istemcinin yalnızca "text/*" türündeki belgeleri kabul ettiğini (yani, resimleri veya diğer ikili dosyaları değil, yalnızca metin belgelerini) kabul ettiğini yorumlar. İçerik türü, HTTP POST ve PUT gibi ekli bilgilere sahip sorgular için veri türünü tanımlayan CGI değişkeni CONTENT_TYPE eşdeğerdir.

pstrVersion
HTTP sürümünü tanımlayan bir dize işaretçisi. NULL ise, "HTTP/1.0" kullanılır.

dwFlags
INTERNET_ FLAG_* bayraklarının herhangi bir bileşimi. Olası dwFlags değerlerinin açıklaması için Açıklamalar bölümüne bakın.

nVerb
HTTP istek türüyle ilişkilendirilmiş bir sayı. Aşağıdakilerden biri olabilir:

HTTP istek türü nVerb değeri
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

Dönüş Değeri

CHttpFile nesnesinin işaretçisi istendi.

Açıklamalar

dwFlags aşağıdakilerden biri olabilir:

İnternet bayrağı Açıklama
INTERNET_FLAG_RELOAD İstenen dosya, nesne veya dizin listesinin önbellekten değil kaynak sunucudan indirilmesini zorlar.
INTERNET_FLAG_DONT_CACHE Döndürülen varlığı önbelleğe eklemez.
INTERNET_FLAG_MAKE_PERSISTENT Döndürülen varlığı kalıcı varlık olarak önbelleğe ekler. Bu, standart önbellek temizleme, tutarlılık denetimi veya çöp toplamanın bu öğeyi önbellekten kaldıramayacağı anlamına gelir.
INTERNET_FLAG_SECURE Güvenli işlem semantiğini kullanır. SSL/PCT kullanımına çevrilir ve yalnızca HTTP isteklerinde anlamlıdır
INTERNET_FLAG_NO_AUTO_REDIRECT Yalnızca HTTP ile kullanıldığında, yeniden yönlendirmelerin CHttpFile::SendRequest içinde otomatik olarak işlenmemesi gerektiğini belirtir.

Bağlam tanımlayıcısını dwContext seçtiğiniz bir değere ayarlamak için varsayılanı geçersiz kılın. Bağlam tanımlayıcısı, CInternetSession nesnesi tarafından oluşturulan nesnenin CHttpConnection bu özel işlemiyle ilişkilendirilir. Değer, tanımlandığı işlemde durum sağlamak için CInternetSession::OnStatusCallback'e döndürülür. Bağlam tanımlayıcısı hakkında daha fazla bilgi için İnternet İlk Adımlar: WinInet makalesine bakın.

Bu işlevle özel durumlar oluşturulabilir.

Ayrıca bkz.

CInternetConnection Sınıfı
Hiyerarşi Grafiği
CInternetConnection Sınıfı
CHttpFile Sınıfı