Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 20667|Válasz: 0

[ASP.NET] GET kérés "HTTP Error 400. A kérés URL-je érvénytelen"

[Linket másol]
Közzétéve 2018. 07. 04. 9:53:58 | | | |


Ezt a tévinformációt látva az átlagos fejlesztő két okot találhat

1. Különleges karakterek vannak a linken

2. A link hossza túl hosszú(Úgy tűnik, a hossz nem a hibás, homályos, elfelejtettem)

A hibakép címe a következő: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99

Ezután elkezdtük vizsgálni a hibák okait, amelyekkel találkozhattunk

1. Ellenőrizd az URL-t, nincsenek speciális karakterek (kivéve ezt az okot)

2. Az URL első pillantásra nagyon hosszúnak tűnik, szóval töröljük a paraméter hosszának felét, majd kérjük meg. Ennek eredményeként sikeres lehet, és ha folyamatosan hozzáadjuk a karaktereket, megállapítjuk, hogy a hossz meghaladja a 339-et, és ezt a hibát jelentették, és 339 után nincsenek speciális karakterek, ígyLényegében megállapítottuk, hogy a hiba oka az lehet, hogy az URL túl hosszú

A következő lépés a releváns problémák megoldása

Aztán vannak különböző Baidular is, nézd meg a lekérdezéslánc hosszkorlátjának módosításához kapcsolódó konfigurációt

Ezután módosítsd a web.config oldalt

1. Módosítsa a maxQueryStringLength és maxRequestLength konfigurációkat a httpRuntime csomóponton

2. Módosítsa a system.webServer csomópontját az alábbiak szerint

Mentés és várakozással futás közben a hibák továbbra is ugyanazok, és úgy tűnik, nincs értelmük

Ekkor kezdtem elgondolkodni, miért nem, nem hat-e meg, gondolva, hogy lehet, hogy sokan olyan emberek vannak, mint én, akik az IIS globális környezetére gondolnak, vajon nem lehet-e felülírni ezt a beállítást, akkor is használjuk az összes beállított értéket

Ne találgass, csak nézd meg (vedd figyelembe, hogy az általad ellenőrzött requestFiltering a system.webServer alatt található, ne nézz rossz csomópontot).

Ha ki van kapcsolva, az overrideModeDefault értéke Deny, ami azt jelenti, hogy a konfigurációnk az oldalunk konkrét konfigurációján alapul.

Szóval minden normális, miért hiba ez?!

Végül egy visszafordított, amit nem fogadtak el a stackoverflow-on, felkeltette a figyelmemet

láncszemhttps://stackoverflow.com/questi ... is-invalid-in-iis-7



Nagyjából a kérés még nem jutott el az IIS-hez, és az operációs rendszer megállította.

Ekkor kerestem egy másik cikket a Google-on, amely a Microsoft optikai rádiótechnikai támogatásához kapcsolódik

A cím a következő:https://support.microsoft.com/zh ... ettings-for-windows

A két cikk lényege, hogy módosítanunk kell a nyilvántartást, és valószínűleg a következő két érték módosítja a nyilvántartást



Ezután próbáld ki, és menj a CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters adatbázisba

Jobb kattintással az üres területre, és válaszd ki a Dword értéket, ahogy a képen látható



Hozz létre egy új nevet UrlSegmentMaxLength-nak, állítsd be az értéket 2048-ra, majd kattints az OK-ra



Az UrlSegmentMaxCount beállítása ugyanaz, mint fentebb, az érték is Dword 2048, kattints az OK-ra.

A módosítás csak akkor léphet életbe, ha a HTTP szolgáltatást újraindítják

  • Kattints a Start gombra, írd be a Cmd-t, majd kattints az OK-ra.
  • A parancssorban írja be a net stop http gombot, és nyomja meg az Enter gombot.
  • A parancssorban írja be a net start http gombot, és nyomja meg az Enter gombot.


Aztán indítsd újra az IIS-t. Próbáld újra, oké, nincs hiba, tökéletes megoldás





Előző:A "Objektum" típus egy hivatkozás nélküli összeállításban van definiálva. Válasz kell hozzáadni a programhoz...
Következő:Ionic Development Android App Practice (4): Baidu Map API Positioning
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com