Was ist die maximale URL-Länge, die Sie an die Wininet-Funktion übergeben können, HttpOpenRequest?Wie hoch ist die maximale URL-Länge, die Sie an die Wininet-Funktion HttpOpenRequest übergeben können?
Antwort
HttpOpenRequest hat keine maximale Länge, aber für die Serversoftware, auf die Sie ausgerichtet sind, ist die URL-Länge wahrscheinlich begrenzt.
Apache (Server)
Meine frühen Versuche, die maximalen URL-Länge in Webbrowsern in eine Server-URL-Längengrenze von ca. 4.000 Zeichen gestoßen zu messen, erzeugt nach dem Apache eines " 413 Entität zu groß "Fehler. Ich verwendete die aktuellen aktuellen Apache Build gefunden in Red Hat Enterprise Linux 4. Die offizielle Apache-Dokumentation nur erwähnt eine 8.192-Byte-Grenze auf einem einzelnen Feld in einer Anfrage.
Microsoft Internet Information Server (Server)
Das Standardlimit ist 16.384 Zeichen (ja, Microsofts Webserver mehr URLs als Microsofts Web-Browser akzeptiert). Dies ist konfigurierbar.
Perl HTTP :: Daemon (Server)
Bis zu 8.000 Bytes arbeiten. Die Webanwendungsserver mit Perls HTTP :: Daemon-Modul erstellen stoßen eine 16,384 Byte Grenze auf die kombinierte Größe aller HTTP-Anforderung Header. Dies beinhaltet nicht POST-Methode Formulardaten, Datei-Uploads, usw., aber es enthält die URL. In Praxis führte dies zu einem 413 Fehler , wenn eine URL wesentlich länger war als 8.000 Zeichen. Diese Begrenzung kann leicht entfernt werden. Suchen Sie nach allen Vorkommen von 16x1024 in Daemon.pm und ersetzen Sie sie durch einen größeren Wert. Natürlich erhöht dies Ihre Exposition gegenüber Denial-of-Service-Angriffen.
(von Boutell.com)
I would suggest less than 2000 characters., aber die KB article schlägt Internet Explorer eine Grenze von 2083 hat, das auch für Ihren Fall kann auch gelten.
Ja, wir versagen um diesen Betrag – Jason
Es gibt einige maximale Länge consts in WinInet.h:
...
//
// maximum field lengths (arbitrary)
//
#define INTERNET_MAX_HOST_NAME_LENGTH 256
#define INTERNET_MAX_USER_NAME_LENGTH 128
#define INTERNET_MAX_PASSWORD_LENGTH 128
#define INTERNET_MAX_PORT_NUMBER_LENGTH 5 // INTERNET_PORT is unsigned short
#define INTERNET_MAX_PORT_NUMBER_VALUE 65535 // maximum unsigned short value
#define INTERNET_MAX_PATH_LENGTH 2048
#define INTERNET_MAX_SCHEME_LENGTH 32 // longest protocol name length
#define INTERNET_MAX_URL_LENGTH (INTERNET_MAX_SCHEME_LENGTH \
+ sizeof("://") \
+ INTERNET_MAX_PATH_LENGTH)
...
- 1. Wie hoch ist die maximale SMS-Nachrichtenlänge?
- 2. Wie hoch ist die maximale Anzahl an cURL-Verbindungen?
- 3. Wie hoch ist die maximale Länge einer ListProperty?
- 4. Was ist die maximale Länge der Daten, die an die Cassandra-Spalte übergeben werden
- 5. Wie hoch ist die maximale Verbindungsbeschränkung für Ajax Long Poll?
- 6. Wie hoch ist die maximale Anzahl von Dateien?
- 7. Übergeben Sie die Variable an die Schaltfläche
- 8. Rails: Können Sie Argumente an die Methode after_create übergeben?
- 9. Wie hoch ist die maximale Anzahl von Antworten, die eine Ortsanfrage zurückgibt?
- 10. Übergeben Sie die Zeichenfolge an facet_grid: ggplot2
- 11. So übergeben Sie die Systemumgebungsvariable an nginx.conf
- 12. Wie hoch ist die Standardhöhe von UITableViewCell?
- 13. Wie hoch ist die Android Toolbar?
- 14. Wie hoch ist die Standardtastaturanimationsrate des iPhone?
- 15. Wie hoch gehen die X11-Display-Nummern?
- 16. Übergeben Sie die analysierten Daten an UICollectionView
- 17. Wie hoch ist die durchschnittliche Zeit für die schnelle Sortierung?
- 18. Wie hoch ist die Mindestleistung für die Cross AppDomain-Kommunikationsleistung?
- 19. Übergeben Sie die String-Liste als Parameter an die Konsolenanwendung
- 20. Übergeben Sie die Eigenschaften an die benutzerdefinierte Task "Groß-/Kleinschreibung"
- 21. übergeben Sie den Wert an die Datenbank
- 22. Übergeben Sie die Funktion an die Elemente der untergeordneten Liste
- 23. Übergeben Sie die lokale Variable an die Direktive als Eingabe
- 24. So begrenzen Sie die maximale Anzahl an Zeichen in ValueConverter
- 25. Veränderlicher Wrapper von Werttypen, die an Iteratoren übergeben werden können
- 26. Wie hoch ist die maximale Anzahl angehängter Volumes pro Amazon EC2-Instanz?
- 27. Wie die Benachrichtigungsnummer an Ansichten übergeben?
- 28. Wie hoch ist die maximale Größe eines URL-Worts in einer URL?
- 29. Wie hoch ist die maximale Anzahl von Threads in Windows Server 2003?
- 30. Wie hoch ist das maximale Limit für die Google Appengine Ndb GQL-Abfrage?
Wissen Sie, ob diese Grenzwerte Name Wert-Paare enthalten (zB URL? Daten = x ..) oder nur die URL selbst? –
@ David Sykes: Ich * glaube * die Grenzen basieren auf der Größe des Puffers zum Speichern der Zeichen, so würde ich annehmen, dass Namen-Wert-Paare enthält. Aber ich spekuliere nur. –
* "HttpOpenRequest hat keine maximale Länge" * - [Diese Antwort] (https://Stackoverflow.com/a/1293129/1889329) widerspricht dieser Aussage. – IInspectable