Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 20667|Antwoord: 0

[ASP.NET] GET-verzoek "HTTP Error 400. De verzoek-URL is ongeldig"

[Link kopiëren]
Geplaatst op 04-07-2018 09:53:58 | | | |


Als je deze verkeerde informatie ziet, kan de gemiddelde ontwikkelaar twee redenen vermoeden

1. Er zijn speciale tekens in de link

2. De linklengte is te lang(Het lijkt erop dat de lengte niet de schuld is, het is vaag, ik was het vergeten)

Het adres van de foutafbeelding is als volgt: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99

Vervolgens begonnen we de redenen voor de fouten die we konden tegenkomen te onderzoeken

1. Controleer de URL, er zijn geen speciale tekens (zonder deze reden)

2. De url lijkt op het eerste gezicht erg lang, dus laten we de helft van de lengte van de parameter verwijderen en dan aanvragen. Het resultaat is dat het succesvol kan zijn, en door voortdurend tekens toe te voegen, blijkt dat de lengte groter is dan 339 en deze fout wordt gerapporteerd, en er zijn geen speciale tekens na 339, dusWe hebben in feite vastgesteld dat de oorzaak van de fout zou moeten zijn dat de URL te lang is

De volgende stap is het oplossen van de relevante problemen

Dan zijn er verschillende Baidu, controleer de configuratie die gerelateerd is aan het wijzigen van de querystring-lengtelimiet

Pas dan de web.config aan

1. Wijzig de maxQueryStringLength- en maxRequestLength-configuraties onder de httpRuntime-node

2. Wijzig de system.webServer-node als volgt

Met anticipatie opslaan en draaien, zijn de fouten nog steeds hetzelfde, en het lijkt erop dat het geen zin heeft

Op dat moment begon ik me af te vragen: waarom niet, zal het niet effect hebben, denkend dat er misschien veel mensen zoals ik zijn, denkend aan de globale setting van IIS, zal deze instelling niet worden overschreven, we gebruiken nog steeds alle setwaarden

Raad niet, kijk gewoon even (let op: de requestFiltering die je controleert staat onder system.webServer, kijk niet naar de verkeerde node)

Als deze niet klopt, is de waarde van overrideModeDefault Deny, wat betekent dat onze configuratie gebaseerd is op de specifieke configuratie van onze site.

Dus alles is normaal, waarom is het een fout?!

Uiteindelijk viel een revert die niet op stackoverflow was aangenomen mijn aandacht

verbindenhttps://stackoverflow.com/questi ... is-invalid-in-iis-7



Grofweg gezegd heeft het verzoek IIS nog niet bereikt en wordt het door het besturingssysteem gestopt.

Op dat moment zocht ik op Google naar een ander artikel, dat linkte naar de technische ondersteuning voor optische radio van Microsoft

Het adres is als volgthttps://support.microsoft.com/zh ... ettings-for-windows

De kern van de twee artikelen is dat we het register moeten aanpassen, en de twee artikelen worden waarschijnlijk aangepast door de volgende twee waarden van het register



Probeer het vervolgens en ga naar het register CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

Klik met de rechtermuisknop op het lege gebied en selecteer de Dword-waarde, zoals te zien is op de afbeelding



Maak een nieuwe naam aan genaamd UrlSegmentMaxLength, stel de waarde in op 2048 en klik op OK



De instelling van UrlSegmentMaxCount is hetzelfde als hierboven, de waarde is ook Dword 2048, klik OK.

De wijziging kan alleen van kracht worden als de HTTP-service wordt herstart.

  • Klik op Start, typ Cmd, en klik dan op OK.
  • Typ bij de opdrachtprompt net stop http en druk op Enter.
  • Typ bij de opdrachtprompt net start http en druk op Enter.


Begin dan IIS opnieuw. Probeer het opnieuw, oké, geen fout, perfecte oplossing





Vorig:Het type "Object" wordt gedefinieerd in een niet-gerefereerde assembly. Moet een antwoord toevoegen aan het programma...
Volgend:Ionic Development Android App Praktijk (4): Baidu Map API Positionering
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com