Come utilizzare il metodo Server.Transfer

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 219294
Dichiarazione di non responsabilità per articoli della Microsoft Knowledge Base su prodotti non più supportati
Questo articolo è stato scritto sui prodotti per cui Microsoft non offre più supporto. L’articolo, quindi, viene offerto ‘così come è’ e non verrà più aggiornato.
Sommario
Una delle nuove funzionalità (Active Server Pages) introdotte con Internet Information Services (IIS) versione 5.0 è un metodo di trasferimento per l'oggetto server predefinito di ASP.

Questo nuovo metodo è un'alternativa all'utilizzo il metodo Response.Redirect per trasferire a un'altra pagina e consente il trasferimento degli oggetti di errore ASP incorporate e una seconda pagina. Inoltre, il trasferimento avviene sul server invece di imporre il browser per reindirizzare a una nuova pagina.
Informazioni
Quando il metodo Server.Transfer viene chiamato, viene terminata l'esecuzione della prima pagina e inizia l'esecuzione della seconda pagina. Se la prima pagina è stata avviata la scrittura nel buffer di risposta, la seconda pagina consente di accodare il buffer anziché sostituirlo. Se buffer è attivato, le intestazioni HTTP possono essere modificate con il file ASP viene trasferita. Se buffer è disattivato, le intestazioni HTTP non sono modificabili con il file ASP verrà trasferito, a meno che il contenuto non è stato inviato da ASP ancora. Trasferimento di più, inoltre, può essere chiamato in successione, così concatenamento pagine contemporaneamente.

Solo ai dati trasferiti a una pagina ASP seconda sono l'ASP creata - in oggetti e i valori di oggetto errore ASP per la prima richiesta. Tutte le variabili dichiarate dalla prima pagina ASP non sono disponibili nella seconda pagina ASP.

Quando si trasferisce in una pagina di un'altra applicazione, è necessario che gli oggetti Application e Session conterrà informazioni dall'applicazione di origine. Di conseguenza, la pagina ASP che viene trasferita viene considerata come parte di applicazione di origine.

Esempio

Le pagine di esempio riportate di seguito viene illustrato come il metodo Server.Transfer può essere utilizzato. In questo esempio, la pagina iniziale contiene due formati, uno utilizzando il metodo HTTP POST e l'altro utilizzando il metodo HTTP GET. Entrambe le pagine utilizzano la stessa pagina seconda rileva il metodo HTTP e trasferisce una terza pagina diversa per ogni metodo utilizzato. Perché viene utilizzato il metodo di trasferimento, l'oggetto richiesta viene ancora compilato e i risultati corretti dalla prima pagina vengono visualizzati nella terza pagina corrispondente.
  1. Copiare il codice ASP riportato di seguito e salvarlo come "page1.asp" (senza virgolette):
    <html><body><h3>Step 1 - Form Page</h3><table border="1">   <tr>      <th>POST</th>      <td>         <form action="page2.asp" method="POST">         <input type="text" name="Name">         <input type="submit" value="Submit">         </form>      </td>   <tr>   </tr>      <th>GET</th>      <td>         <form action="page2.asp" method="GET">         <input type="text" name="Name">         <input type="submit" value="Submit">         </form>      </td>   </tr></table></body></html>						
  2. Salva il codice riportato di seguito "page2.asp" (senza virgolette):
    <% @LANGUAGE="VBSCRIPT" %><html><body><h3>Step 2 - Transfer Page</h3><%   Select Case UCase(Request.ServerVariables("REQUEST_METHOD"))      Case "POST"         Server.Transfer "page3a.asp"      Case "GET"         Server.Transfer "page3b.asp"      Case Else         Response.Write "An unknown HTTP verb was used."   End Select%></body></html>						
  3. Salva il codice riportato di seguito "page3a.asp" (senza virgolette):
    <% @LANGUAGE="VBSCRIPT" %><h3>Step 3a - POST Results</h3><p>Hello <% = Request.Form("Name") %></p></body></html>						
  4. Salva il codice riportato di seguito "page3b.asp" (senza virgolette):
    <% @LANGUAGE="VBSCRIPT" %><h3>Step 3b - GET Results</h3><p>Hello <% = Request.QueryString("Name") %></p></body></html>						
Nota: Le ultime due pagine non sono pagine HTML completare. Infatti, di Accodamento di entrambe le pagine nel buffer di risposta è stato avviato nella seconda pagina.

Per provare questo esempio, salvare tutte le pagine in una cartella Web con "Script" accesso attivato e cercare "page1.asp."
IIS

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 219294 - Ultima revisione: 11/21/2006 05:27:07 - Revisione: 2.1

Microsoft Internet Information Services 5.0

  • kbmt kbcodesnippet kbinfo kbscript KB219294 KbMtit
Feedback