Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 20667|Vastaus: 0

[ASP.NET] GET-pyyntö "HTTP-virhe 400. Pyynnön URL-osoite on virheellinen"

[Kopioi linkki]
Julkaistu 4.7.2018 9.53.58 | | | |


Tämän väärän tiedon nähdessään keskiverto kehittäjä saattaa arvata kaksi syytä

1. Linkissä on erikoishahmoja

2. Linkin pituus on liian pitkä(Näyttää siltä, että pituus ei ole vika, se on epämääräinen, unohdin)

Virhekuvan osoite on seuraava: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99

Seuraavaksi aloimme tutkia virheiden syitä, joita saattoi kohdata,

1. Tarkista URL, siinä ei ole erityisiä merkkejä (pois lukien tämä syy)

2. URL näyttää ensi silmäyksellä todella pitkältä, joten poistetaan puolet parametrin pituudesta ja pyydetään se. Tulos on, että se onnistuu, ja sitten jatkuvasti lisäämällä merkkejä huomataan, että pituus ylittää 339 ja raportoi tämän virheen, eikä erikoismerkkejä ole 339:n jälkeen, jotenPäätimme käytännössä, että virheen syynä pitäisi olla URL-osoitteen liian pitkä

Seuraava askel on ratkaista olennaiset ongelmat

Sitten on erilaisia Baiduja, tarkista konfiguraatio, joka liittyy kyselymerkkijonon pituusrajan muokkaamiseen

Sitten muokkaa web.config-tiedostoa

1. Muokkaa maxQueryStringLength- ja maxRequestLength-konfiguraatioita httpRuntime-solmussa

2. Muokkaa system.webServer-solmua seuraavasti

Tallentaen ja ajeten odotuksella, virheet ovat edelleen samat, eikä niistä tunnu olevan hyötyä

Tässä vaiheessa aloin miettiä, miksei, eikö se vaikuttaisi, ajatellen, että saattaa olla monia kaltaisiani ihmisiä, jotka ajattelevat IIS:n globaalia asetelmaa, eikö tätä asetusta ohitetaan, käytämme silti kaikkia asetettuja arvoja

Älä arvaa, tarkista se (huomaa, että tarkistamasi requestFiltering löytyy system.webServeristä, älä katso väärää solmua)

Jos se on pois päältä, overrideModeDefaultin arvo on Kieltäy, mikä tarkoittaa, että konfiguraatiomme perustuu sivustomme erityiseen kokoonpanoon.

Joten kaikki on normaalia, miksi se on virhe?!

Lopuksi palautus, jota ei otettu käyttöön Stackoverflowssa, kiinnitti huomioni

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



Karkeasti ottaen pyyntö ei ole vielä saavuttanut IIS:ää ja käyttöjärjestelmä tuhoaa sen.

Tänä aikana etsin Googlesta toista artikkelia, joka linkitti Microsoftin optisen radion tekniseen tukeen

Osoite on seuraavahttps://support.microsoft.com/zh ... ettings-for-windows

Näiden kahden artikkelin ydin on, että rekisteriä täytyy muuttaa, ja näitä kahta artikkelia todennäköisesti muokataan seuraavilla kahdella rekisterin arvolla



Seuraavaksi kokeile ja siirry rekisteriin CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

Napsauta oikealla tyhjää aluetta ja valitse Dword-arvo, kuten kuvassa näkyy



Luo uusi nimi nimeltä UrlSegmentMaxLength, aseta arvoksi 2048 ja klikkaa OK



UrlSegmentMaxCount -asetus on sama kuin yllä, arvo on myös Dword 2048, klikkaa OK.

Muutos voi astua voimaan vain, jos HTTP-palvelu käynnistetään uudelleen

  • Klikkaa Start, kirjoita Cmd ja sitten OK.
  • Komentokehotteessa kirjoita net stop http ja paina Enter.
  • Komentokehotteessa kirjoita net start http ja paina Enter.


Sitten käynnistä IIS uudelleen. Yritä uudelleen, ok, ei virhettä, täydellinen ratkaisu





Edellinen:Tyyppi "Olio" määritellään viitamattoman kokoonpanon muodossa. Täytyy lisätä vastaus ohjelmaan...
Seuraava:Ionic Development Android-sovelluskäytäntö (4): Baidu Map API Positioning
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com