Τρόπος δημιουργίας SSL αιτήσεις χρησιμοποιώντας το WinInet

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.

Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:168151
Αποποίηση ευθυνών για περιεχόμενο της Γνωσιακής Βάσης (KB) που έχει αποσυρθεί
This article was written about products for which Microsoft no longer offers support. Therefore, this article is offered "as is" and will no longer be updated.
Περίληψη
Αυτό το άρθρο εξηγεί πώς να κάνουν αιτήσεις SSL χρησιμοποιεί τα API WinInet.
Περισσότερες πληροφορίες
Είναι δυνατό να δημιουργήσει μια περίοδο λειτουργίας HTTP Secure Socket Layer (SSL) ή Private Communications Technology (PCT) με το WinInet API. Ασφαλής HTTP, που δηλώνεται ως HTTPS://, πραγματοποιείται μέσω της θύρας TCP 443. Παρόμοιο με το εξής κωδικός μπορεί να χρησιμοποιηθεί για να δημιουργήσει μια περίοδο λειτουργίας HTTPS:
   ...   hOpen = InternetOpen (...);   Connect = InternetConnect (                hOpen,                      // InternetOpen handle                "MyHttpServer",             // Server  name      INTERNET_DEFAULT_HTTPS_PORT,// Default HTTPS port - 443                "",                         // User name                "",                         //  User password                INTERNET_SERVICE_HTTP,      // Service      0,                          // Flags      0                           // Context                   );   hReq = HttpOpenRequest (                hConnect,                   // InternetConnect handle      "GET",                      // Method      "",                         // Object name      HTTP_VERSION,               // Version      "",                         // Referrer                NULL,                       // Extra headers      INTERNET_FLAG_SECURE,       // Flags      0                           // Context                );   ...				
Έχετε υπόψη δύο διαφορές κατά τη χρήση HTTPS αντί του HTTP:
  • InternetConnect χρησιμοποιεί INTERNET_DEFAULT_HTTPS_PORT αντί INTERNET_INVALID_PORT_NUMBER ή INTERNET_DEFAULT_HTTP_PORT
  • HttpOpenRequest χρησιμοποιεί την επιλογή INTERNET_FLAG_SECURE μαζί με όλες τις άλλες επιλογές.
Οι ακόλουθες δύο επιλογές μπορούν να χρησιμοποιηθούν σε HttpOpenRequest ή στο InternetOpenUrl να παραβλέπει τα σφάλματα πιστοποιητικού δεν είναι έγκυρη:

  • INTERNET_FLAG_IGNORE_CERT_CN_INVALID - παραβλέπει τα σφάλματα που μπορεί να προκληθεί από το όνομα κεντρικού υπολογιστή του πιστοποιητικού του διακομιστή δεν ταιριάζουν με το όνομα κεντρικού υπολογιστή στην αίτηση.
  • INTERNET_FLAG_IGNORE_CERT_DATE_INVALID - παραβλέπει τα σφάλματα που μπορεί να προκληθεί από ένα πιστοποιητικό διακομιστή έχει λήξει.
Ανατρέξτε στην τεκμηρίωση του Internet Client SDK για περισσότερες πληροφορίες σχετικά με αυτές τις σημαίες.

Λειτουργίες SSL και το πρωτόκολλο PCT παρέχονται από Schannel.dll, η οποία εγκαθίσταται σωστά κατά την εκτέλεση του προγράμματος αναδιανομή Wintdist.exe ή Wint351.exe. Για πληροφορίες σχετικά με την αναδιανομή Schannel.dll, δείτε Redist.txt ή Axredist.txt.
Αναφορές
Βοήθεια SDK του προγράμματος-πελάτη Internet

Προειδοποίηση: Αυτό το άρθρο έχει μεταφραστεί αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 168151 - Τελευταία αναθεώρηση: 12/18/2010 22:58:00 - Αναθεώρηση: 2.0

  • kbhowto kbmt KB168151 KbMtel
Σχόλια