Ero Palvelimen Siirron Ja Vasteen Uudelleenohjauksen Välillä

Ero Palvelimen Siirron Ja Vasteen Uudelleenohjauksen Välillä
Ero Palvelimen Siirron Ja Vasteen Uudelleenohjauksen Välillä

Video: Ero Palvelimen Siirron Ja Vasteen Uudelleenohjauksen Välillä

Video: Ero Palvelimen Siirron Ja Vasteen Uudelleenohjauksen Välillä
Video: Ruby on Rails by Leila Hofer 2024, Marraskuu
Anonim

Server. Transfer vs Response. Redirect

Palvelin ja vastaus ovat molemmat ASP. NET: n objekteja. Palvelinobjekti tarjoaa menetelmiä ja ominaisuuksia palvelimelle liittyville erilaisille tehtäville. Siirto on Palvelin-objektin menetelmä, ja se lähettää nykyisen tilan tiedot toiseen.asp-tiedostoon käsittelyä varten. Vastausobjekti kuvaa palvelimen vastaukseen liittyviä menetelmiä ja ominaisuuksia. Uudelleenohjaus on vastausobjektin menetelmä, ja se lähettää viestin selaimelle, jolloin se muodostaa yhteyden toiseen URL-osoitteeseen. Vaikka sekä Server. Transfer- että Response. Redirect-sovelluksia voidaan käyttää käyttäjän siirtämiseen yhdeltä sivulta toiselle, he eroavat toisistaan siinä, miten he tosiasiallisesti suorittavat tämän tehtävän.

Mikä on Response. Refirect?

Uudelleenohjaus on menetelmä Response-objektissa. Kun vastausmenetelmää kutsutaan, se lähettää HTTP-koodin 302 ja pyydetyn verkkosivun URL-osoitteen käyttäjien selaimelle. HTTP-koodi 302 ilmoittaa käyttäjien selaimelle, että pyydetty resurssi sijaitsee eri URL-osoitteen alla. Kun selain vastaanottaa koodin, se avaa resurssin uudessa paikassa. Pyydetty verkkosivu voi olla samassa palvelimessa kuin pyyntö sisältävä sivu tai se voi olla jossakin muussa palvelimessa. Kun pyydät verkkosivua, joka sijaitsee samalla palvelimella kuin nykyinen sivu, Response-menetelmää voidaan käyttää seuraavasti:

Response. Redirect (“nextPage.html”);

Kun pyydät toisella palvelimella sijaitsevaa verkkosivua, Response-menetelmää voidaan käyttää seuraavasti:

Response. Redirect (“https://www.newServer.com/newPage.aspx”);

Mikä on Server. Transfer?

Kuten aiemmin mainittiin, Transfer on menetelmä palvelinobjektille. Kun siirtomenetelmää kutsutaan, alkuperäistä pyyntöä muokataan siirtämään toiselle sivulle samalla palvelimella. Kun uutta sivua pyydetään palvelimen siirron avulla, käyttäjien verkkoselaimessa näkyvä URL-osoite ei muutu. Tämä johtuu siitä, että siirto tapahtuu palvelinpuolella eikä selaimella ole tietoa siirrosta. Käyttämällä toista ylikuormitusta Server. Transferille (merkkijonopolku, bool säilytyslomake) ja asettamalla toinen parametri tosi, lähetetyt lomakemuuttujat ja kyselymerkkijonot voidaan asettaa toiselle sivulle.

Mitä eroa on Server. Transfer ja Response. Redirect välillä?

Vaikka sekä Server. Transfer- että Response. Redirect-sovelluksia voidaan käyttää käyttäjän siirtämiseen yhdeltä sivulta toiselle, näiden kahden menetelmän välillä on joitain eroja. Ilmeisen syntaktisen eron lisäksi Response. Redirect tekee edestakaisen palvelimen palvelimen, kun taas Server. Transfer muuttaa verkkopalvelimen painopisteen toiselle verkkosivulle. Siksi Server. Transfer-palvelimen avulla palvelinresurssit voidaan säilyttää. Toisaalta Response. Redirect-ohjelmaa voitaisiin käyttää käyttäjän uudelleenohjaamiseen toisen palvelimen verkkosivulle, kun taas Server. Transfer-ohjelmaa voidaan käyttää vain käyttäjän uudelleenohjaamiseen saman palvelimen verkkosivuille. Myös Server. Transfer-toiminnolla edelliselle sivulle voidaan päästä uudelta sivulta, mutta tämä ei ole mahdollista Response. Redirect-toiminnolla. Lisäksi vastaus. Uudelleenohjaus muuttaa selaimen osoiterivin URL-osoitetta, kun uutta sivua avataan, mutta kun käytetään palvelinta. Siirrä alkuperäinen URL-osoite säilytetään ja sivun sisältö korvataan. Joten käyttäjä ei voi käyttää sitä uuden sivun kirjanmerkkeihin.

Suositeltava: