75 votes

Quelle est la limite de caractères pour les URL

Quelle est la limite de caractères pour une URL, notamment si l'URL est formée à partir de la méthode GET d'un formulaire.

3 votes

Question intéressante, je n'y avais jamais pensé

21 votes

Ne le faites pas. N'encodez pas d'énormes quantités de données dans vos URL.

0 votes

Github insère les filtres de l'étiquette de l'enjeu dans l'URL. Bien que cela soit peu probable, cela peut finir par remplir la limite d'URL. Je considère qu'il s'agit d'une utilisation correcte des paramètres d'URL.

75voto

elcuco Points 3953

Selon Microsoft, c'est 2048. Comme ils ont inventé l'internet (et aussi la lumière, l'obscurité et Linux), ils ont raison :-) .... ou... et comme IE force cette valeur inférieure, c'est le plus petit dénominateur commun.

http://support.microsoft.com/kb/208427

Sous Firefox, je vois des gens sur le net qui signalent que des URL de 0xFFFF fonctionnent : http://forums.mozillazine.org/viewtopic.php?f=38&t=155648&start=0&st=0&sk=t&sd=a

Voici un autre article qui en parle : http://hiox.org/index.php?id=425

6 votes

Vote positif pour la deuxième phrase.

0 votes

@Josh +1 (sauf pour la partie concernant le "dénominateur")

2 votes

Microsoft a inventé l'internet ?

17voto

RichieHindle Points 98544

Il n'y a pas de maximum publié, mais la limite effective est d'environ 2 000 caractères, car c'est ce que supporte Internet Explorer (version 4 et supérieure). Voir http://www.boutell.com/newfaq/misc/urllength.html

15voto

AntoineSubit Points 657

Explication

Il n'y a pas de règle empirique pour la taille maximale de l'URL de HTTP Get Demande conforme à la RFC 2616 (Hypertext Transfer Protocol - HTTP/1.1 - Section 3.2.1).

Des limites sont imposées par différents navigateurs et leurs serveurs respectifs.
Ces limites doivent être prises en compte collectivement lors du passage de la chaîne de requête passée dans l'URL dans n'importe quelle requête HTTP.

Si la taille de l'URL dépasse la limite imposée par le navigateur concerné, la demande ne sera pas transmise au serveur & des efforts inutiles seront nécessaires pour déboguer et gérer cette situation.


Taille maximale de l'URL par...

Navigateur

  1. Internet Explorer

    2048 B

    La longueur maximale du localisateur de ressources uniformes (URL) de Microsoft Internet Explorer est de 2 083 caractères . Internet Explorer dispose également d'un chemin d'accès d'une longueur maximale de 2 048 caractères. Si vous utilisez la méthode GET, vous êtes limité à un maximum de 2 048 caractères, moins le nombre de caractères du chemin d'accès.

  2. Mozilla Firefox

    100 KB

    La barre d'adresse n'affiche aucun caractère au-delà de 65 536 caractères. Mais la taille de l'URL peut être supérieure Bien que vous ne puissiez pas l'afficher dans la barre d'adresse. Ceci est valable pour FireFox 1.5 jusqu'à la version actuelle de FireFox.

  3. Opéra

    200 KB

    L'URL est entièrement visible dans la barre d'adresse, même à une distance aussi grande.

  4. Chrome,Safari

    100 KB

    Les deux navigateurs sont basés sur webkit et semblent avoir presque tous les mêmes caractéristiques. même limite que firefox


Serveur

  1. Apache

    128 KB

    La taille est modifiée à l'aide du paramètre LimitRequestLine du serveur.

  2. IIS

    16 KB

    La valeur par défaut est de 16 KB et la limite maximale est de 16 MB.

  3. Lotus Notes

    4 KB


Plus d'informations

Les URL très longues ne sont pas du tout recommandées.
Pour qu'une application web soit compatible avec plusieurs navigateurs, il faut que les éléments suivants soient utilisés Get Méthode ne doit pas être utilisé pour transmettre des chaînes très longues, contenant plus de 2000 caractères.

Si vous êtes confronté à une situation où vous devez utiliser des URL contenant un grand nombre de caractères, réfléchissez-y à deux fois.

3voto

Byron Whitlock Points 29863

IE plus récent : 2048 caractères Certaines plateformes ne supportent que 255.

8 votes

Il serait utile de savoir de quelles plateformes vous parlez, car j'avais l'impression qu'IE (@ 2048 chars) supporte la longueur d'URL la plus basse de tous les navigateurs / plateformes populaires... :)

0 votes

@MatW Qu'en est-il des téléphones et des tablettes... ? je ne suis pas sûr, je cherche moi-même cette information...

3voto

Droo Points 46

Les limites varient selon les navigateurs. Mais en général, la limite est d'environ 2 000 caractères pour la méthode GET d'une URL. Vous pouvez utiliser une page proxy qui utilise la méthode POST (si votre API la prend en charge) et dont la limite est plus élevée (5 000 caractères). Nous étudions actuellement la possibilité d'utiliser une page proxy avec l'API Google Map car nous nous sommes heurtés à la limite des 2 000 caractères.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X