ΠΛΗΡΟΦΟΡΙΕΣ: HTTP GET και HTTP POST είναι απενεργοποιημένες από προεπιλογή

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 819267 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Περίληψη

Αυτό το άρθρο περιγράφει τις αλλαγές στο .NET Framework 1.1 που επηρεάζουν τοHTTP GETη μέθοδος και τοΔΗΜΟΣΊΕΥΣΗ HTTPη μέθοδος σε ένα διακομιστή Web. Αυτό το άρθρο περιγράφει εναλλακτικούς τρόπους αντιμετώπισης για αυτήν τη νέα λειτουργικότητα.

Περισσότερες πληροφορίες

Οι υπηρεσίες Web που συνδέεται με .NET υποστηρίζουν HTTP GET, HTTP POST και πρωτόκολλα SOAP. Από προεπιλογή, στο .NET Framework 1.0, ενεργοποιούνται όλα τα τρία πρωτόκολλα. Από προεπιλογή, στο .NET Framework 1.1, HTTP GET και HTTP POST και απενεργοποιούνται. Αυτό γίνεται για λόγους ασφαλείας.

Οι εφαρμογές που χρησιμοποιούν HTTP GET ή HTTP POST για να καλέσετε μια υπηρεσία Web αποτύχει κατά την αναβάθμιση της υπηρεσίας Web για το .NET Framework 1.1. Αυτές οι εφαρμογές λαμβάνουν μια
System.Net.WebException
το μήνυμα λάθους που δηλώνει ότι η μορφή της αίτησης δεν είναι αναγνωρίσιμη.

Σημειώστε ότι η φόρμα δοκιμής που βασίζονται σε HTML χρησιμοποιεί HTTP POST και επομένως η φόρμα δοκιμής που βασίζονται σε HTML δεν λειτουργεί στο .NET Framework 1.1. Αυτό ισχύει εκτός στο localhost, όπως σημειώνεται παρακάτω.

Το .NET Framework 1.1 ορίζει ένα νέο πρωτόκολλο που ονομάζεταιHttpPostLocalhost. Από προεπιλογή, ενεργοποιείται αυτό το νέο πρωτόκολλο. Αυτό το πρωτόκολλο επιτρέπει την ενεργοποίηση των υπηρεσιών Web που χρησιμοποιούν αιτήματα HTTP POST από εφαρμογές στον ίδιο υπολογιστή. Αυτό ισχύει υπό την προϋπόθεση ότι χρησιμοποιεί τη διεύθυνση URL POSThttp://localhostNothttp://hostname. Αυτό επιτρέπει στους προγραμματιστές υπηρεσίας Web για να χρησιμοποιήσετε τη φόρμα HTML που βασίζεται σε δοκιμή για να καλέσετε την υπηρεσία Web από τον ίδιο υπολογιστή όπου βρίσκεται η υπηρεσία Web.

Όταν προσπαθείτε να αποκτήσετε πρόσβαση στην υπηρεσία Web από έναν απομακρυσμένο υπολογιστή δεν βλέπετε το κουμπί Invoke. Και λαμβάνετε το ακόλουθο μήνυμα λάθους:

Η φόρμα δοκιμής είναι διαθέσιμη μόνο για αιτήσεις από τον τοπικό υπολογιστή

Εναλλακτικός τρόπος αντιμετώπισης

HTTP GET και HTTP POST μπορεί να ενεργοποιηθεί με την επεξεργασία στο Web.config αρχείου για την εικονική ρίζα όπου βρίσκεται η υπηρεσία Web. Η ακόλουθη ρύθμιση παραμέτρων επιτρέπει και HTTP GET και HTTP POST:
<configuration>
    <system.web>
    <webServices>
        <protocols>
            <add name="HttpGet"/>
            <add name="HttpPost"/>
        </protocols>
    </webServices>
    </system.web>
</configuration>
Εναλλακτικά, μπορείτε να ενεργοποιήσετε αυτά τα πρωτόκολλα για όλες τις υπηρεσίες Web στον υπολογιστή μέσω της επεξεργασίας της ενότητας <protocols>στο Machine.config. Το παράδειγμα που ακολουθεί ενεργοποιεί HTTP GET, HTTP POST, και επίσης SOAP και HTTP POST από localhost:</protocols>
<protocols>
	<add name="HttpSoap"/>
	<add name="HttpPost"/>
	<add name="HttpGet"/> 
	<add name="HttpPostLocalhost"/>
      <!-- Documentation enables the documentation/test pages -->
	<add name="Documentation"/>
</protocols>

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τη ρύθμιση παραμέτρων υπηρεσιών Web, ανατρέξτε στο<protocols></protocols>Το στοιχείο της τεκμηρίωσης του .NET Framework 1.1:.aspx http://msdn2.Microsoft.com/en-us/library/ccbk8w5h (vs.71)

Ιδιότητες

Αναγν. άρθρου: 819267 - Τελευταία αναθεώρηση: Τετάρτη, 22 Δεκεμβρίου 2010 - Αναθεώρηση: 2.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft .NET Framework 1.1
Λέξεις-κλειδιά: 
kberrmsg kbwebclasses kbwebserver kbhttp kbhtml kbinfo kbmt KB819267 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:819267

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com