|
1. Získejte limit délky metody Neexistuje žádné omezení velikosti a délky dat odeslaných metodou Http Get a specifikace protokolu HTTP neomezuje délku URL. Toto omezení je omezení uvalené konkrétním prohlížečem a serverem. Například limit délky URL IE je 2083 bajtů (2K+35). Zde jsou některá vysvětlení maximálního výpočetního výkonu různých prohlížečů a serverů. Microsoft Internet Explorer (prohlížeč) IE má maximální limit 2083 znaků pro URL a pokud tento počet překročíte, tlačítko odeslat neodpoví. Firefox (prohlížeč) U Firefoxu je URL omezena na 65 536 znaků. Safari (prohlížeč) Maximální délka URL je omezena na 80 000 znaků. Opera (prohlížeč) Maximální délka URL je omezena na 190 000 znaků. Google (Chrome) Maximální délka URL je omezena na 8182 znaků. Apache (server) Maximální délka URL, kterou lze přijmout, je 8 192 znaků. Microsoft Internet Information Server(IIS) Maximální délka URL, kterou lze přijmout, je 16 384 znaků. Z výše uvedených dat je vidět, že aby všichni uživatelé mohli procházet normálně, je nejlepší nepřekročit maximální délku IE (2083 znaků); samozřejmě, pokud URL není přímo poskytnuta uživateli, ale volání programu, délka je ovlivněna pouze webovým serverem. Poznámka: Pro čínský přenos bude konečná kódovací forma přenášena pro urlencode, pokud je kódování prohlížeče UTF8, konečná délka kódovaného znaku čínského znaku je 9 znaků. Pokud tedy použijete metodu GET, maximální délka je rovna maximální délce URL minus počet znaků v cestě. 2. Limit délky metody POSTTeoreticky neexistuje žádné omezení velikosti pro POST. Specifikace HTTP protokolu také nemá limit velikosti, ale omezujícím efektem je výpočetní výkon handleru serveru. Například odstraňte limit velikosti POST pod Tomcat (Tomcat výchozí na 2M); Otevřete adresář konferencí v adresáři tomcat, otevřete soubor server.xml a upravte ho <Konektor debug="0" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="8080" redirectPort="8443" enableLookups="false" minSpareThreads="25" maxSpareThreads="75" maxThreads="150" maxPostSize="0" URIEncoding="GBK" > </Connector> Přidat červené písmo part maxPostSize="0" (nastavení 0 slouží k odstranění limitu velikosti POST)
|