Appendice: Oggetto Response



Documenti analoghi
Lezione III: Oggetti ASP e interazione tramite form HTML

Accesso a basi di dati con ASP. Algoritmo per visualizzare un DB

Lezione II: Web server e ambiente di lavoro

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web

Manuale di ASP

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

Protocolli applicativi: FTP

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

19. LA PROGRAMMAZIONE LATO SERVER

Indice Configurazione di PHP Test dell ambiente di sviluppo 28

Sicurezza Informatica: Tecniche di SQL INJECTION

ASP. Prof. Claudio Maccherani (tratto da Linguaggi nel Web di Arena, Borchia e da altre fonti varie)

Il Protocollo HTTP e la programmazione di estensioni Web

A. Lorenzi Pagine ASP

Applicazione ASP di esempio

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Reti di Calcolatori. Il Livello delle Applicazioni

Corso basi di dati Gli oggetti interni ASP

GESTIONE DI MDB in WEB

FORMMAIL.pl. E'presentata una lista dei campi che possono essere utilizzati all'interno della form: CAMPO NECESSARIO DA INSERIRE NELLA FORM

ASP: ESERCIZI E SOLUZIONI

Esercizi di JavaScript

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Scaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»

Il Web Server e il protocollo HTTP

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Data Base in Internet

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda)

Esercitazione 8. Basi di dati e web

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i

PHP - Storia. Inizialmente sviluppato da Rasmus Lerdorf come serie di script CGI

Lezione 6: Form 27/04/2012

Omeka PURL Plugin. Torino, 30 settembre Emilio Remogna

Il sistema operativo UNIX/Linux. Gli script di shell

GovPay 2.0. Manuale Installazione

VBScript. VBScript. Visual Basic Scripting Edition. Linguaggio di script per browser e server Microsoft Deriva da Visual Basic, ma è interpretato

Web Programming. Lezione 4: Cookie e Sessioni. Giulio Rossetti 14/04/2011. Guru@Work

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

Esercizio 2. Client e server comunicano attraverso socket TCP

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

SMS API. Documentazione Tecnica YouSMS HTTP API. YouSMS Evet Limited

GERARCHIE RICORSIVE - SQL SERVER 2008

CONFIGURATION MANUAL

appunti delle lezioni Architetture client/server: applicazioni client

Corso basi di dati Installazione e gestione di PWS

Come funziona internet

HTML il linguaggio per creare le pagine per il web

INSTALLARE PALLADIO USB DATA CABLE IN WINDOWS XP/ME/2000/98

04/05/2011. Lezione 6: Form

Esercizi (1-2): da: TCP/IP Sockets in C (Donahoo-Calvert)

PHP. A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO SERVER E MOBILE COMPUTING Atlas. Copyright Istituto Italiano Edizioni Atlas

Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino

INFORMATICA DISTRIBUITA. lez 6 World Wide Web (cont)

URI. Introduzione. Pag. 1

Programmazione server-side: applicazioni CGI

Dott.ssa Adriana Pietramala

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

Lezione 1 Introduzione

Procedure memorizzate SQL-2003/PSM. Forma base di PSM. Parametri in PSM

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>...

PHP e MySQL. Guida scaricata da

Dott.ssa Adriana Pietramala. Dott.ssa Maria Vittoria Avolio

Progetto ittorario Anno scol

Siti web centrati sui dati (Data-centric web applications)

Corso di Informatica Modulo T3 B1 Programmazione web

Internet Architettura del www

PLANET GYM IL PIANETA DEL FITNESS. Emanuele Cesari Anno scolastico 2013/2014 Agostino bassi 4D SIA Relazione palestra

Una metodologia di progettazione di applicazioni web centrate sui dati

Applicazioni web centrati sui dati (Data-centric web applications)

Il linguaggio HTML - Parte 3

ESERCITAZIONE Semplice creazione di un sito Internet

I file di dati. Unità didattica D1 1

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Installazione, configurazione e utilizzo di IIS

Tesi Di Laurea. Anno Accademico 2010/2011. relatore Ch.mo prof. Cinque Marcello. correlatore Ch.mo Ing. Catello Cacace

Dati importati/esportati

Dato un form contenente <input type="text" name="weight" size="20" />

Database e reti. Piero Gallo Pasquale Sirsi

Windows 2000, Windows XP e Windows Server 2003

MySQL Database Management System

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.c Cookies e sessioni. Goy - a.a. 2012/2013 Programmazione Web 1

ACTIVE SERVICE PAGES E DATABASE: tecnologia ADO

1. Soluzione esercizio XYZ SpA

Il linguaggio SQL. è di fatto lo standard tra i linguaggi per la gestione di data base relazionali.

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML

Compatibilità del Portale Piaggio con Internet Explorer 10 e 11. Internet Explorer 10

Do-Dots Protocollo di comunicazione

BASI DI DATI Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

Tecnologie e Programmazione Web

POS VIRTUALE INTERNET. SETEFI S.p.A

Documentazione API web v 1.0

Approfondimento di Marco Mulas

Progettazione Web Applicazioni client-server

Casalini Crypto. Documento di protocollo tecnico VRS 2.1

Introduzione alla Programmazione

Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass

Transcript:

Appendice: Oggetto Response Dell'oggetto Response abbiamo esaminato solo il metodo Write (che scrive sull output della pagina), quindi è d'obbligo una panoramica sugli altri metodi: Response.AddHeader Aggiunge un header specifico alla pagina, di cui è possibile settare nome e valore Response.AppendToLog questo metodo aggiunge una stringa di non più di 80 caratteri al file di log del server cioe di IIS (Internet Information Server: web server su Windows NT) Response.BinaryWrite questo metodo permette di visualizzare dei file binari (es. le immagini) cioe invia all'output il parametro passato senza applicare conversioni di charset Response.Clear ripulisce l'output, ma solo se bufferizzato Response.End interrompe l'elaborazione ASP in corso (e restituisce l'output se bufferizzato). Response.Flush invia all'istante l'ouput bufferizzato Response.Redirect serve per inviare i clients ad un altro URL cioe invia un messaggio di redirect al browser, spostandolo su un differente URL. Se il buffer e attivato ripulirà il buffer e inserirà il comando di redirect al posto dei dati cumulati. Response. IsClientConnected verifica durante l'esecuzione della pagina se il client è ancora connesso Response.Pics Aggiunge un valore al PICS label dell'header Con la proprietà Response.ContentType si può specificare il tipo di dato inviato con protocollo http. La sintassi prevede di impostare sia il tipo del contenuto generale sia di quello specifico. Per default tale proprietà imposta il tipo ed il sottotipo come text/html cioè il contenuto è di tipo generale text ed in particolare è scritto in linguaggio HTML

Metodi dell oggetto Response Response.BinaryWrite () permette di visualizzare dei file binari (es. le immagini) cioè invia all'output il parametro passato senza applicare conversioni di charset sintassi: Response.BinaryWrite(Data) The BinaryWrite method writes nonstring data (binary data) to the current HTTP output without any character set conversion. This method can use the output of the Request.BinaryRead method. For example, you could retrieve an image from a database with Request.BinaryRead and send it to a client using Response.BinaryWrite. There is one mandatory argument: Data The Data argument is the data to send to the HTTP output. -------------------File1.asp------------------ <HEAD> </HEAD> <form action="file2.asp" method="post"> Name:<input type="text" name="name" maxlength="30"><br> Age:<input type="text" name="age" maxlength="10"><br> Sex:<input type="text" name="sex" maxlength="10"><br> <input type="submit" name="submit" value="submit"><br> </form> -------------------File2.asp------------------ bytecount = Request.TotalBytes binread = Request.BinaryRead(bytecount) Response.BinaryWrite binread Output: name=paola&age=49&sex=f&submit=submit oppure name=jane&age=25&sex=female&submit=submit Response.Clear () ripulisce l'output, ma solo se bufferizzato sintassi: Response.Clear The Clear method clears (erases) any buffered HTML output. It does not erase the response headers, only the body. If the buffer does not exist, because Response.Buffer was set to False, a runtime error will occur. Note that in ASP version 2.0, the default for Response.Buffer is set to False, however in ASP version 3.0, the default for Response.Buffer is set to True. Response.Clear

Response.End () interrompe l'elaborazione ASP in corso (e restituisce l'output se bufferizzato). sintassi: Response.End The End method orders the web server to stop processing the script. The current results are returned and no further processing occurs. If Response.Buffer is set to True, Response.End will flush the buffer and then end. Note that in ASP version 2.0, the default for Response.Buffer is set to False, however in ASP version 3.0, the default for Response.Buffer is set to True. In the example, the second Response.Write will not be displayed in the output. Response.Write "Hello World" Response.End Response.Write "Is this the End?" <!-- Output: Hello World --> Response.Flush () invia all'istante l'ouput bufferizzato sintassi: Response.Flush The Flush method immediately sends all current buffered page content to the client if the Response.Buffer property is set to True. If the buffer does not exist, because Response.Buffer is set to False, a runtime error will occur. Note that in ASP version 2.0, the default for Response.Buffer is set to False, however in ASP version 3.0, the default for Response.Buffer is set to True. Response.Flush Response.Redirect () serve per inviare i clients ad un altro URL cioè invia un messaggio di redirect al browser, spostandolo su un differente URL. Se il buffer e' attivato ripulirà il buffer e inserirà il comando di redirect al posto dei dati cumulati. sintassi: Response.Redirect(URL) The Redirect method stops processing the current script and attempts to connect the client to a different URL. This is accomplished by adding an HTTP redirection header to the output stream that is being sent from the server to the client. Unfortunately, if page content has already been sent to the client and if a proxy server lies between the server and the client, an error message can be generated. Therefore it is advisable to set Response.Buffer to true and to call Response.Clear just before calling Redirect. Note in ASP 2.0, the buffering default setting is false and in ASP 3.0, the buffering default setting is true. There is one mandatory argument: URL The URL argument is the Uniform Resource Locator (URL) that the browser is redirected to.

--------------File3.asp--------------- Response.Buffer = true Response.Write "This is File3.asp and switching to File4.asp" rem Response.Clear Response.Redirect "File4.asp" --------------File4.asp----------------- Response.Write "This is File4.asp" Output: File3 is written and then the browser will load File4: ------------File3.asp------------------ This is File3.asp and switching to File4.asp (se manca Response.Redirect "File4.asp") ------------File4.asp------------------- Response.Write(Variant) The Write method writes any specified string to the HTTP output. There is one mandatory argument: Variant The Variant argument is the data to be written as a string. A variant is a VBScript data type and includes characters, integers, and strings. The variant cannot contain the character combination of. Response.Write "Hello World" Response.Write "<BR>" <!-- Output: Hello World<BR> -->

Response. IsClientConnected () verifica durante l'esecuzione della pagina se il client è ancora connesso The IsClientConnected property determines if the client has disconnected from the server since the last Response.Write. This property is particularly useful since it will prevent the server from continuing to attempt to pass information after an unexpected disconnect. In ASP 2.0, you must first attempt to pass information to the client in order to use this property. However, in ASP 3.0 you can check the response of using this property before passing any content to the client. (Thus, a simple test will prevent the server from performing unneccesary work.) In the example code, the output will be a list of all the book titles that are in the database. However, if the user stops the connection to the server, then the only a partial list of titles will be created. (da creare DB con nome books ed anche l'unica tabella di nome books): set conndb=server.createobject("adodb.connection") conndb.open "books", "", "" mysql="select * from books" Set rsbooksrch = Server.CreateObject("ADODB.Recordset") rsbooksrch.open mysql, conndb, adopenstatic, adlockpessimistic <HEAD></HEAD> Do until (rsbooksrch.eof or Response.IsClientConnected=false) Response.Write rsbooksrch.fields("title") <br> rsbooksrch.movenext Loop rsbooksrch.close conndb.close Proprietà: PROPERTY: Response.ContentType -------------------------------------------------------------------------------- The ContentType property specifies the HTTP content type, which includes a type/subtype, for the response header. The type is the general content, and the subtype is the specific content. The default is text/html. This example code will produce a 2 X 2 Excel Spreadsheet in a browser, if Excel is installed on the client machine. Code: Response.ContentType = "application/vnd.ms-excel" <HEAD></HEAD> <TABLE> <TR> <TD>2</TD><!--- Cell : A1 ---> <TD>4</TD><!--- Cell : B1 ---> </TR> <TR> <TD>5</TD><!--- Cell : A2 ---> <TD>6</TD><!--- Cell : B2 ---> </TR> </TABLE> <!-- funziona creando foglio Excel in locale -->

Oggetto Request L'oggetto Request, al contrario di Response, è utilizzato per recuperare informazioni di vario genere, vengano esse dal client che richiede una pagina o siano relative al server stesso. Come per l'oggetto Response vediamo il riassunto veloce dei metodi, delle proprietà e delle collection: Collections: ClientCertificate Cookies Form QueryString ServerVariables Properties: TotalBytes Methods: BinaryRead La sintassi generica dell'oggetto Request è: Request.[Collection Property Method]( variable ) Vi possono essere varie collection, ed infatti negli esempi si può osservare l'utilizzo della collection QueryString, che accetta le stringhe provenienti da un form oppure inserite manualmente, formate da un punto interrogativo seguito da un testo oppure l'utilizzo della collection Form che recupera i dati del form inviati con metodo post La collezione Request.Cookies Serve a recuperare un cookie, la sintassi è semplice La collezione Request.ServerVariables Request.Cookies("NOME_DEL_COOKIE") La collezione Request.ServerVariables si occupa del fornire delle informazioni relative all'utente connesso ad una pagina o del restituire i valori di alcune variabili d'ambiente. L'utilizzo è classico, basato sulla nozione puntata e sulle chiavi: variabile = Request.ServerVariables("nome_chiave"); Le possibili chiavi sono molteplici ed alcune di esse dipendono strettamente dal server che elabora la pagina. Per identificare il nome del navigatore che il client sta usando in quel momento si è usato il metodo ServerVariables che permette di richiedere al server una delle variabili di sistema come ad esempio HTTP_USER_AGENT. Ecco altre variabili del server: HTTP_REFERER HTTP_ACCEPT_LANGUAGE REMOTE_ADDR ALL_HTTP URL della pagina indicato dall'utente al documento del sito Lingua accettata dal browser IP del client. Tutte le variabili HTTP_*

Le chiavi più ricorrenti e più frequentemente utilizzate: Chiave Utilizzo ALL_HTTP HTTP_<HEADER> HTTP_CONTENT_TYPE HTTPS LOCAL_ADDR QUERY_STRING REMOTE_ADDR REMOTE_HOST SCRIPT_NAME SERVER_NAME SERVER_PORT SERVER_SOFTWARE Restituisce tutti gli header HTTP associati alla richiesta del client Sostituendo <HEADER> con il nome di uno specifico header appartenente alla richiesta HTTP è possibile conoscerne il contenuto Restituisce il tipo di dato dei contenuti inviati dal client. Si utilizza con le richieste che trasmettono informazioni a partire dal client, come con i form HTML inviati con metodo POST o GET Restituisce ON se la richiesta arriva attraverso canali sicuri (SSL), OFF in caso contrario Restituisce l'indirizzo del Server Restituisce l'intera query string associata all'url Restituisce l'indirizzo IP dell'host che ha inviato la richiesta Restituisce il nome dell'host che ha inviato la richiesta Restituisce il percorso virtuale dello script in esecuzione Restituisce il nome del server, il suo alias DNS o il suo indirizzo IP Restituisce il numero della porta alla quale la richiesta è stata inviata Restituisce il nome e la versione del server software che ha risposto alla richiesta NB: altre variabili non implementabili sul server brinkster HTTP_UA_PIXELS Risoluzione del monitor con il browser del client HTTP_UA_COLOR Palette dei colori del monitor dell utente HTTP_UA_OS Sistema Operativo del browser dell'utente HTTP_CONTENT_LENGTH Restituisce la lunghezza dei contenuti inviati dal client DATE_LOCAL Data corrente nella fascia oraria locale Metodo dell oggetto Request METHOD BinaryRead (Count) Method The BinaryRead method retrieves the data that was sent to the server from the browser as part of a POST request, and returns the number of bytes read. da http://www.devguru.com/technologies/asp/quickref/response_addheader.html e http://www.aspcode.it/tutorials/tutorials.asp?action=show_tut&idx=6 sson=6 vedi anche: http://msdn.microsoft.com/library/default.asp?url=/library/en-s/iisref60/htm/ref_vbom_resomah.asp