• Non ci sono risultati.

In te rn et e WWW - 2 T IP O L OGI E D I RE T E

N/A
N/A
Protected

Academic year: 2021

Condividi "In te rn et e WWW - 2 T IP O L OGI E D I RE T E"

Copied!
17
0
0

Testo completo

(1)

In te rn et e WWW - 1 C o rs o d i L a u rea in Ing e gn e ri a In fo rm a tica e d E le tt ron ica C o rs o d i Fond a m e n ti d i I n fo rm a tica 2

In tr odu z ion e a In te rn e t e a l W o rl d W id e We b

Ing . F ra n c o Z a m bon e lli F e bb ra io 2000

In te rn et e WWW - 2 T IP O L OGI E D I RE T E

R e ti Lo ca li : c onne tt ono e labo ra to ri fis ic a m en te v ic in i (ne llo s te ss o u ff ic io o s tab ili m en to ).

Stampante di qualita` Stampante ad aghi WorkstationWorkstationWorkstationWorkstationWorkstation Disk server

Bus di rete

L AN ( Lo ca l A rea N e tw o rk )

R e ti g e og ra fic h e : c o llegano e labo ra to ri m ed io -g rand i s itua ti an c he a g rande d is tan z a .





 



 

     

 

  

W AN ( W id e A rea N e tw o rk )

IN T E RN E T : N o m e c h e d es ign a la re te ri s u lt a n te d a ll’i n te rc on n ess ion e m ond ia le d i tu tt e le re ti

(2)

In te rn et e WWW - 3 IN T E RN E T R e te m ond ia le ba s a ta s u l p ro to c o llo T C P /I P (de fin ito da l D A R PA a m e tá deg li ann i ’ 70 ). C rea ta s to ric a m en te pe r e s igen z e m ili ta ri e U n te m po u s a ta s o lo pe r sc op i s pe c ia lis tic i, f ra un iv e rs ità e c en tr i d i ric e rc a OGGI s e m p re p iù il p ri n c ip a le s tr u m e n to pe r • sc a m b ia rs i rap ida m en te in fo rm a z ion i • tr o v a re in fo rm a z ion i d i ogn i tipo in te m po rea le • sv iluppa re app lic a z ion i d is tr ibu ite • … .

I c o m pu te r d i In te rne t s ono a ss o c ia ti ad : un no m e (o p iù ) s im bo lic o

deis.unibo.it, linus.apple.com, www.nasa.gov

il no m e è d iv is o in do m in i e s o tt odo m in i: (s tr u tt u ra ge ra rc h ic a )

in U SA do m in i a ss o c ia ti a l tipo d i o rgan izz a z ione : gov, edu, com ....

ne l re s to de l m ondo - tip ic a m en te - do m in i a ss o c ia ti a lla na z ione e s o tt odo m in i: it, fr, uk.... unibo, unimi...

In te rn et e WWW - 4 IND IR IZZ O IN T E RN E T A ogn i c o m pu te r è a ss o c ia to un ind iri zz o In te rne t (IP nu m be r) un ic o

137.204.57.34 192.31.254.130

4 c a m p i d i 1 b y te 255 *255 *255 *255 (4 m ili a rd i c irc a ) d i c o m pu te r po ss ono e ss e re c o llega ti a In te rne t....

L 'u lti m o nu m e ro iden tif ic a d i s o lit o un c o m pu te r a ll'i n te rno d i una s o tt o re te , g li a ltr i l a s o tt o re te ....

W in95 : P anne llo C on tr o llo – > R e te – > P rop rie T C P /I P

UN IX : d iv e rs i fil e d i c on figu ra z ione : /etc/netconfig

(3)

In te rn et e WWW - 5 DN S (do m a in n a m e s y s te m )

pe rm e tt e d i tr a s la re il no m e s im bo lic o ne ll'i nd iri zz o IP . N od i s pe c ia lizz a ti (DN S s e rv e r) r is o lv ono la a ss o c ia z ione tr a no m e s im bo lic o e ind iri zz o IP . I l tu tt o è tr a s pa ren te a ll’ u ten te

In W in 95 :

In UN IX : c o m ando nslookup

S e non è s e tt a to il do m a in na m e s y s te m s i può c rea re una a ss o c ia z ione tr a no m i s im bo lic i e ind iri zz i IP ne l fil e : C : /Windows/hosts (per Windows) /etc/hosts (per UNIX)

In te rn et e WWW - 6 IN T ERNE T A CASA PR O PR IA ?

P e r e ss e re “in re te ” o cc o rr e c he “il fil o d i In te rne t” a rr iv i s u l p rop rio c o m pu te r

M a In te rne t c o llega d ire tt a m en te s o lo re ti geog ra fic he d i un iv e rs ità , c en tr i d i ric e rc a , e tc

E il p rop ri o c o m pu te r d i casa ?

ID EA : • a c a s a a rr iv a g ià le re te te le fon ic au sa re IL F IL O D E L T E L E F O N O pe r a rr iv a re da c a s a a una re te c o llega to a In te rne t → M O D E M

M a ... do ve t e le fon a re ??

P e rc hé qua lc uno do v rebbe la sc ia rm i u s a re la s ua re te pe r c o llega rm i a In te rne t??

PR O V ID ER (“ fo rn it o re ) • qua lc uno c he ha una re te c o llega ta pe rm anen te m en te a In te rne t (s e m p re a cc e s o ) • e de c ide d i c on se n tir e , a p a g a m e n to o g ra tis (p e r m o tiv i pubb li c it a ri e c on qu a li d i se rv iz io p sca rsa ) d i acce d e re a In te rn e t t ra m it e il s uo c o ll e g a m e n to te le fonando p re ss o d i l u i → ABB O N A M E N T O A L P R O V ID E R Il no s tr o c o m pu te r, c o llegando s i a un c o m pu te r de l p ro v ide r, s ito , d iv en ta pa rte de lla re te de l p ro v ide r e , c o m e ta le , è c o llega to ad In te rne t. Ind iri zz o IP a ss egna to d ina m ic a m en te a ll'i n iz io de l c o llega m en te da l p ro v ide r s te ss o .

(4)

In te rn et e WWW - 7 P R O T O C O LL I D I ACC ESS O A IN T E RN E T

P ro to c o llo = sc he m a c on v en z iona le d i c o m un ic a z ione tr a en tit á

I p ro to c o lli d i In te rne t s ono rea lizz a ti s pe c ia lizz ando il p ro to c o llo d i ba s e T C P /I P

• te lne t, rlog in (te rm ina le re m o to )

• E -M a il (po s ta e le tt ron ic a )

• ft p (tr a s fe rim en to fil e )

• h tt p (tr a s fe rim en to e na v iga z ione in ipe rte s ti)

P ro to c o lli d i tipo C L IE N T -SE R VE R :

uno s tr u m en to d i tipo

p rog ra mm a (s e c ondo un p re c is o p ro to c o llo ) s e rv iz i a un “c ” c he ric h iede lien te tip ic a m en te re m o ta “s ” s u una m a cc h ina , e rv ito re

E

s e m p io : H TT P (p ro to c o llo ), W eb B ro w s e r (c lien te ), W eb S e rv e r ( s e rv ito re )

In te rn et e WWW - 8 T E L N E T

te rm ina le re m o to : pe rm e tt e d i u s a re il te rm ina le lo c a le c o m e s e fo ss e il te rm ina le d i una m a cc h ina re m o ta . S e rv e r d is pon ib ili s o lo pe r s is te m i UN IX /L INU X . C rea una c onne ss ione d i re te c on la m a cc h ina re m o ta ba s a ta s u te rm ina le a c a ra tt e re

In W in95 : Cli en t T e lne t pe r W in95

In UN IX : c o m ando : telnet nomemacchina

R L OG IN è s im ile a te lne t, m a :

te lne t e ff e tt ua il c o llega m en to a te rm ina le re m o to ed è gene ra le (non s o lo UN IX )

rlog in ten ta il l og in re m o to e s i fa s o lo tr a m a cc h ine UN IX "fi da te "

(5)

In te rn et e WWW - 9 E -M A IL

U n u ten te s u una m a cc h ina UN IX ha a ss o c ia to uno u s e rna m e . I n gene ra le s i i den tif ic a l'u ten te a tt ra v e rs o la s in ta ss i:

username@nomemacchina

Q ue s to rapp re s en ta an c he l'ind iri zz o d i po s ta e le tt ron ic a (i m a il s e rv e r s ono tip ic a m en te s is te m i UN IX ). E ’ po ss ib ile a ss o c ia re a lia s e lis te d i i n te re ss e ag li i nd iri zz i E -m a il.

E s : E UD O R A , E -m a il c lien t pe r W indo w s

In te rn et e WWW - 10 E -M A IL

T ra m ite E -m a il, u ten ti s u m a cc h ine s ia lo c a li c he re m o te po ss ono sc a m b ia rs i m e ss agg i te s tua li, c ioè s o lo c od ic e AS C II

E s is tono m e tod i s tanda rd d i c od ifi c a pe r fil e d i tipo b ina rio (uude c ode , uuen c ode ): tr a s fo rm ano c od ic e b ina rio in c od ic e a sc ii, e s ono s fr u tt a ti dag li s tr u m en ti d i “a tt a c h m en t”

(6)

In te rn et e WWW - 11 FT P

P ro to c o lli pe r il tr a s fe rim en to fil e

C i s i c o llega a una m a cc h ina re m o ta s u c u i s i de v e a v e re a cc oun t (e s u c u i de v e e s egu ire un ft p s e rv e r!)

In W in95 : c lien ti a in te rfa cc ia g ra fic a :

In UN IX : c lien ti a L inea d i C o m ando

prompt> ftp macchina remota username: passwd: ftp>

s i hanno qu ind i a d is po s iz ione un s e t lim ita to d i c o m and i s he ll pe r e s a m ina re il fil e s y s te m

C O M AND I FT P IN UN IX

In te rn et e WWW - 12 ls, dir, cd - s o lit o s ign ifi c a to

get - p re le v a un fil e da lla m a cc h ine re m o ta

put - depo s ita un fil e

mget - p re le v a p iù fil e c on c a ra tt e ri w ild c a rd

mput - depo s ita ...

bin, ascii - il tipo de l fil e da tr a s fe rir e : il tr a s fe rim en to a sc ii è p iú e ff ic ien te , s fr u tt a le ridondan z e de l c od ic e pe r lim ita re i b it da tr a s fe rir e

prompt - c h iede c on fe rm a o m eno

hash - v is ua lizz a il nu m e ro d i k tr a s fe rit i

(7)

In te rn et e WWW - 13 FT P AN O N IM O

pe r c o llega rs i a una m a cc h ina s u c u i non s i ha a cc oun t

ban c he da ti pubb lic he

login : ftp o anonymous passwd: E-mail address

v iene da ta una v is ione pa rz ia le de l fil e s y s te m

F o rm a ti de i fil e :

. tar

.Z

. z

.gz

In te rn et e WWW - 14 P R O T O C O LL I E S T RU M E N T I A V AN Z A T I

I p re c eden ti s tr u m en ti pe r l'a cc e ss o a In te rne t non s ono do ta ti de l requ is ito d i

tr as p a re n z a

s i ha c o sc ien z a de lla d is tr ibu z ione de ll'i n fo rm a z ione (i. e ., no m e ho s t)

S tr u m en ti p iù a v an z a ti pe rm e tt ono d i a cc ede re a lla re te in m an ie ra tr a s pa ren te , c o m e s e tu tt o fo ss e lo c a le . I l c o llega m en to re m o to è (o puó e ss e re ) na sc o s to a ll'u ten te

U SE N E T ne w s

W o rld W ibe W eb

(8)

In te rn et e WWW - 15 U SE N E T N E W S

"ba c he c he e le tt ron ic he " pe r lo sc a m b io d i:

in fo rm a z ion i

op in ion i

do m ande

o p iù gene ric a m en te : s p a z io d i d isc u ss ion e

ne w s g roup : iden tif ic a l'a rgo m en to

E s e m p io :

alt.fan.nirvana

comp.unix.networking

soc.culture.italian

In te rn et e WWW - 16 U SE N E T N E W S

m a cc h ine c he ric e v ono ne w s s u ba s e pe riod ic a a tt ra v e rs o p ro to c o lli d i d iff u s ione pun to -pun to s u lla re te

n e w s se rve r

c he s i pa ss ano le ne w s s u ba s e pe riod ic a In que s to m odo le ne w s d iff ondono a tt ra v e rs o In te rne t s u sc a la m ond ia le

Le ne w s v engono s ped ite da un u ten te c he v i ha a cc e ss o , o v unque e ss o s ia , a tt ra v e rs o s tr u m en ti deno m ina ti n e w s rea d e r (c li e n t) Il ne w s reade r ( ogg i tip ic a m en te ing loba to ne l b ro w s e r o ne l m a ile r) s e rv e o vv ia m en te an c he pe r legge rle

T u tt o è tr a s pa ren te a ll'a llo c a z ione fis ic a s u In te rne t an c he s e l'ind iri zz o d i p ro v en ien z a de lle ne w s è p re s en te

N O T A : il fo rm a to de lle ne w s è que llo de i m a il! S i può qu ind i u s a re un c lien te E -m a il pe r legge re le ne w s !

(9)

In te rn et e WWW - 17 WWW (M osa ic , N e tscape , E xp lo re r) s tr u tt u ra z ione ipe rte s tua le de lle in fo rm a z ion i (tr a s pa ren z a de lla a llo c a z ione de lle in fo rm a z ion i) e u s o d i i n te rfa cc e g ra fic he (s e m p lic ità d i u tili zz o )

abcdef FORM

INPUT UTENTE

OUTPUT ELABORAZIONE

elemento

RETE VISIONE LOCALE

NODI REMOTI

F a c endo “c lick ”s u una pa ro la /imm ag ine s i “e s pande ” una pa rte de l do c u m en to c he in te re ss a . N on e ’ ne c e ss a rio “pe rc ep ire ” il fa tt o c he il do c u m en to s ia s u l fil e sys te m lo c a le o s u una m a cc h ina re m o ta .

In te rn et e WWW - 18 W o rl d W id e W e b (WWW )

C E RN (1989 )







!"""

#$%&'$&%

S c op i • T ra s pa ren z a a cc e ss o e a llo c a z ione tr a m ite ne v iga z ione s u ipe rte s ti • P re s en ta z ione m u lti m ed ia le • In te rfa cc ia un ic a pe r p ro to c o lli d iv e rs i (in teg ra z ione c on g li a ltr i p ro to c o lli ) • M od ifi c ab ili tà e c ond iv is ione de lle in fo rm a z ion i

A m p ia sc e lta d i i n te rfa cc e te s tua li e g ra fic he P o ss ib ili tà d i e s ten s ion i s pe rim en ta li de l s is te m a

C o m pon e n ti • B ro w s e r ( p re s en ta z ione e ge s tione ric h ie s te ) • S e rv e r ( a cc e ss o e in v io in fo rm a z ion i) • H e lpe r app lic a tion s (pa rti c o la ri p re s en ta z ion i) • A pp lic a z ion i C GI (e s e c u z ione re m o ta ) • A pp le t (e s e c u z ione lo c a le )

S p ec if ic h e s ta nd a rd • S is te m a d i i nd iri zz a m en to un iv e rs a le UR I e UR L (U n ifo rm R e s ou rc e Iden tif ie r/Lo c a tion ) • P ro to c o llo H TT P (H y pe rT e x t T ran s fe r P ro to c o l) • L inguagg io H T M L (H y pe rT e x t M a rk up Language ) • In te rfa cc ia C GI (C o mm on G a te w a y In te rfa c e ) • L inguagg io J a v a pe r A pp le t

(10)

In te rn et e WWW - 19 S IS T E M A WWW

C li e n te e s ua in te ra z ione

HTTP client applicazioni di supporto

sistema locale utente

Il Cli en te H TT P u s a un m odo c lien te /s e rv ito re ne i c on fr on ti d i un s e rv e r pe r v o lta e può an c he in te rag ire c on ris o rs e lo c a li

richiesta

risposta

HTTP

client

HTTP

server

TCP / IPTCP / IP CGI

applicazioni esterne applicazioni di supporto

rete sistema remotosistema locale

In te rn et e WWW - 20 UR L U n ifo rm R e s ou rc e L o c a to rs

no m i un ic i pe r le ris o rs e de l s is te m a s pe c ifi c a ti da l c lien te pe r de te rm ina re il s e rv ito re

o U n if o rm R es ou rce Lo ca to rs (UR L ): • nodo c on tenen te la ris o rs a ( do c u m en to o da ti ) • p ro to c o llo d i a cc e ss o a lla ris o rs a ( e .g . h tt p , gophe r ) • nu m e ro d i po rta T C P ( po rta d i de fau lt de l s e rv iz io ) • lo c a lizz a z ione de lla ris o rs a ne l s e rv e r.

<protocollo>[ ://<host>][:<porta>][<percorso>]

S ono ric ono sc iu ti i s e rv iz i i n te rne t e re la tiv i p ro to c o lli => h tt p , gophe r, ft p , w a is , t e lne t, ne w s , nn tp , e m a il

http://www.address.edu:1234/path/subdir/file.ext

servizio host porta percorso

U s o d i de fau lt pe r lo c a lizz a re ris o rs e

U n UR L può an c he de te rm ina re un in s ie m e d i ris o rs e : ad e s e m p io v e rs ion i m u ltili ngue tr a c u i sc eg lie re

(11)

In te rn et e WWW - 21 H TT P H y pe rT e x t T ran s fe r P ro to c o l

p ro to c o llo d i i n te rfa cc ia tr a c lien te e s e rv ito re U s o d i T C P e d i c onne ss ione (po rta 80 de fau lt)

C a ra tt e ris tic he H TT P :

reque s t/ re s pon s e

one -s ho t c onne c tion

s ta te le ss

R eque s t/ re s pon s e : ric h ie s ta e ric e z ione d i da ti. O ne -s ho t c onne c tion : la c onne ss ione T C P è m an tenu ta s o lo pe r il te m po ne c e ss a rio a tr a s m e tt e re i da ti S ta te le ss : non m an tiene ne ss una in fo rm a z ione tr a una ric h ie s ta e la s u cc e ss iv a

in gene re : • ri c h ies ta de l c lien te c on in fo rm a z ion i pe r il se rve rri s po s ta c on in fo rm a z ion i da l s e rv e r il c lien te può de te rm ina re una fo rm a d i sc e lta (n e go z ia z ion e ) s u lle in fo rm a z ion i ed i s e rv iz i

HTTP-message =

Simple- Request

;HTTP/0.9

/

Simple- Response

/

Full- Request

;HTTP/1.0

/

Full- Response

N O N c 'e ' s ta to de l s e rv e r

In te rn et e WWW - 22 Il C once tt o d i UR L

L 'ind iri zz o in te rne t d i un c o m pu te r lo s pe c ifi c a un iv o c a m en te ne l m ondo

Il no m e d i un fil e lo s pe c ifi c a un iv o c a m en te ne l s uo fil e sys te m

Q U IND I:

C o m ponendo ind iri zz o In te rne t e no m e fil e s i i den tif ic a un iv o c a m en te un fil e a liv e llo m ond ia le :

NOME COMPUTER/PERCORSO_E_NOME_DEL_FILE

pcfz.unimo.it/CorsoRE/Internet.doc

O vv ia m en te p re c edu to da l no m e de l p ro to c o llo c he s i de v e (o s i v uo le ) u s a re pe r a cc ede re il fil e . Di de fau lt h tt p .

http://pcfz.unimo.it/CorsoRE/Internet.doc

ftp://pcll.unibo.it/CorsoMO/Windows.doc

W indo w s 98 in teg ra que s ta v is ione de l fil e s y s te m a liv e llo g loba le in un a m b ien te in c u i "na v iga re " ne l p rop rio fil e s y s te m o "na v iga re " s u In te rne t è la s te ss a c o s a .

N O N S O L O : a cc e ss o a ris o rs e s u l p rop rio c o m pu te r ( fil e iden tif ic a ti da un pa thna m e ) M A ANCH E : a cc e ss o a ris o rs e re m o te in In te rne t (fil e iden tif ic a ti da una UR L )

C o m e pe r i fil e , è po ss ib ile c o llega re a l de sk top UR L .

(12)

In te rn et e WWW - 23 H T M L H y pe rT e x t M a rk up L anguage

H T M L è un linguagg io d i s pe c ifi c a de lle in fo rm a z ion i c he de riv a da S G M L (S tanda rd G ene ra liz ed M a rk up Language ). E ' un m a rk up la ngu a g e ( T e X , R TF ).

I linguagg i m a rk up u s ano de i ta g de fin iti fun z ion a lm e n te pe r c a ra tt e rizz a re g ra fic a m en te il te s to in c lu s o .

ta g H T M L

te st o d i ti po h ea d er 1 : <H1>testo</H1> te st o in g ra ss ett o : <STRONG>testo</STRONG> oppu re <B>testo</B> V is u ali zzaz ion e d ip end en te d al b ro w se r

li nk : <A HREF = "destinazione"> descrizione </A>

imm ag in i: <IMG SRC = "myimage.gif">

app le t Ja v a: <APPLET CODE="Hello.class" WIDTH=100 HEIGHT=80>

H T M L m o lt o se m p li ce pe r non c o m p lic a re il c lien te

ve rs ion e b ro w se r p rop ri e 1 .0 s to ric o heade r, lis te , en fa s i 2 .0 M o s a ic In line Im age , f o rm 2 .1 N e tsc ape /M ic ro s o ft tabe lle , a lli nea m en to 3 .2 N e tsc ape /M ic ro s o ft fr a m e , ... 4 .0 N e tsc ape /M ic ro s o ft S tili , J a v a S c rip t

In te rn et e WWW - 24 E se m p io pag ina H T M L (cod ice )

<HEAD> <TITLE>Page Title</TITLE> </HEAD>

<BODY> <H1>Example of HTML document</H1>

The second paragraph shows special effects. This is a word in <I>italics</I>. This is a word in <B>bold</B>. Here is an in-lined GIF image: <IMG SRC = "myimage.gif">. <P>

The third paragraph demonstrates links. Here is a hypertext link from the word <A HREF = "subdir/myfile.html">hello</A> to a document called "subdir/myfile.html". <P>

<H2>A second-level header</H2>

This is a unordered list with two items: <P> <UL> <LI> cranberries <LI> blueberries </UL> This is the end of my example document. <P> <ADDRESS> Me (me@deis.unibo.it) </ADDRESS> </BODY>

(13)

In te rn et e WWW - 25 E se m p io pag ina H T M L (v isua li zz a z ione )

P e r a pp ro fond ir e la c ono sce n z a d i H T M L

c on s u lt a re il s it o W e b d e l c o rs o .

In te rn et e WWW - 26 P rog ra mm a z ione c li en t/ se rve r in WWW

richiesta

risposta

HTTP

client

HTTP

server

sistema remotosistema locale

P o ss ib ilit à d i av er e ri spo st a c on in fo rm az ion i d in am ic h e

C h e ti po d i el abo raz ion e d ell e in fo rm az ion i e d ov e v ie n e e se gu it a

ri ch ie st a R is p o st a tip o d i el a b o ra zi o n e D o cu m en to H T M L S ta ti ca (la p ag in a è un fil e, non m od if ica b il e) se m p li ce tr asf er im en to fil e d al se rv er C G I D in am ica C od ice su l se rv er (qu al unqu e ti po d i el abo raz ion e) ed es egu it o su l se rv er Ja v a a pp le t S ta ti ca cod ice fon it o d al se rv er ed es egu it o su l cli en t

(14)

In te rn et e WWW - 27 C o mm on G a te w ay In te rf ace (C GI)

richiesta

risposta

HTTP

client

HTTP

server

CGI applicazioni

sistema remotosistema locale esterne

C G I è uno st a nd a rd p er in te rf acc ia re un se rv er WWW con app li caz ion i es te rn e (r es id en ti su ll a m acc h in a se rv er)

C G I f o rn is ce a ll ’u te n te la ca p ac it à d i es egu ir e un a a pp li caz ion e su ll a m acc h in a se rv er r em o ta

ri ch ie st a ri spo st a ti po d i el abo ra zi o n e C G I d in am ica qu al unqu e, s u l n o d o ser v er

L a ris po st a o tt enu ta d al se rv er è "d in am ica ", in qu an to ris u lt an te d all a e sec u zi on e d i un p rog ra mm a su l se rv er .

In te rn et e WWW - 28 P rog ra mm a z ione C GI

U na app lic a z ione C GI pe rm e tt e ag li u ten ti d i e s egu ire una app lic a z ione s u l nodo do v e ris iede il s e rv e r www .

A pp lic a z ion i C GI po ss ono e ss e re sc ritt e in : C /C ++ , PE R L , T C L , UN IX s he ll, V is ua l B a s ic , e tc…

N o rm a le a tt iv a z ione d i una C GI: • S i i n v ia a l s e rv e r un m e ss agg io (c iò a vv iene tip ic a m en te rie m p iendo m odu li, i c u i da ti s e rv iranno c o m e inpu t a l p rog ra mm a ) • Il m e ss agg io sc a tena l'e s e c u z ione de l p rog ra mm a C GI • Il p rog ra mm a C GI gene ra c o m e ou tpu t una pag ina H T M L in c u i i n s e risc e i ris u lta ti de lla s ua e s e c u z ione

In te rfa cc ia tr a se rv e r www e app lic a z ione C GI :

v a ri a b ili d i a m b ie n te ( non le v ed ia m o in de tt ag lio ) • li nea d i c o m ando • s ta nd a rd inpu t: il s e rv e r r id iri ge s u ll’i ng re ss o de lla app lic a z ione C GI i da ti ric e v u ti da l c lien t (b ro w s e r) . I l nu m e ro d i b y te è ne lla v a riab ile d ’a m b ien te C O N T E N T _L E N G T H , il tipo de i da ti M IM E ne lla C O N T E N T _ T Y PE . • s ta nd a rd ou tpu t: l’app lic a z ione C GI m anda il ris u lta to de ll’ e labo ra z ione s u llo s tanda rd ou tpu t v e rs o il s e rv e r, c he a s ua v o lta p repa ra i da ti e li s ped isc e a l c lien t.

(15)

In te rn et e WWW - 29 C li e n t H TT P →→ se rv e r H TT P →→ C G I T ip ic a m en te , u s o d i fo rm

<TITLE>Esempio di Form </TITLE> <H1>Esempio di Form </H1>

<FORM METHOD=" POST " ACTION="http ://www- lia.deis.unibo.it/cgi-bin/post-query "> < --! Indica di inviare come input al programma indicato da quell’URL i dati di input inseriti dall’utente -->

Inserisci del testo: <INPUT NAME=" entry">

e premi per invio: <INPUT TYPE="submit" VALUE="Invio"> </FORM>

V is ua lizz a z ione fo rm

In te rn et e WWW - 30 A pp li ca z ion e C G I

E se m p io : c od ic e d i C GI c on gene ra z ione de lla pag ina d i ris po s ta (app lic a z ione C )

#include <stdio.h> ...

main(int argc, char *argv[]) { int cl;

/* generazione di un documento HTML come output */

printf("Content-type: text/html");

cl = atoi(getenv(" CONTENT_LENGTH "));

/* scopre quanto sono lunghi i dati di input */

for(x=0;cl && (!feof( stdin ));x++) { /* ... el abo raz ion e d ell ’inpu t (s td in ) ... */

}

printf("<H1>Query Results</H1>"); printf("You submitted ...");

for(x=0; x <= m; x++) printf("...", ... , ....); }

(16)

In te rn et e WWW - 31 A pp le t

• una app le t (p icc o la app lic a z ione ) v iene e s egu ita a ll’i n te rno d i un b ro w s e r WWW c o m e E x p lo re r o N e tsc ape N a v iga to r • tr a m ite il tag < a pp le t> è po ss ib ile d ire a l b ro w s e r d i sc a ric a re il c od ic e (il fil e .c la ss ) e d i e s egu irl o • a l c on tr a rio de l C GI, la c o m pu ta z ione v iene e s egu ita s u l c lien t

SERVERCLIENT Browser

APPLET APPLET

In te rn et e WWW - 32 A pp le t Java

S te ss a s e m an tic a de l re c upe ro d i una imm ag ine : •

v ede re una app le t

(

e s egu irl a

C lasse java.applet.Applet

M e tod i

pe

r in te rag ire c on l’a m b ien te in c u i v iene e s egu ita •

pe

r c a ric a re e ge s tir e imm ag in i e s uon i •

pe

r o tt ene re pa ra m e tr i c on tenu ti ne l fil e H T M L •

pe

r o tt ene re in fo rm a z ion i s u l p rop rio s ta to (a tt iv a /d is a tt iv a , d im en s ion i, ... )

S ic u re zz a • l’app le t v iene e s egu ita in una “s andbo x ” pe r c u i può a cc ede re s o lo a lle ris o rs e de ll’ ho s t da c u i v iene p re le v a ta , in pa rti c o la re : ⇒

⇒ c onne ss ion i d i re te : s o lo c on ho s t d i p ro v en ien z a non può

sc riv e re s u l fil e sys te m lo c a le a l b ro w s e r do v e v iene e s egu ita •

ne

l j k d 1 .2 m agg io re fle ss ib ili tà ⇒

po

ss ib ili tà d i s pe c ifi c a re qua li ope ra z ion i può e ff e tt ua re un ’app le t a s e c onda de lla p ro v en ien z a e /o firm a d ig ita le

(17)

In te rn et e WWW - 33 E se m p io d i a pp le t

F ile d i c od ic e H e llo W o rld .ja v a

import java.applet.Applet;

import java.awt.Graphics;

import java.awt.Font;

public class HelloWorld extends Applet

{ public void paint(Graphics g)

{ g.setFont(new Font("TimesRoman", Font.PLAIN, 30));

g.drawString("Hello", 50, 30);

g.setFont(new Font("TimesRoman", Font.PLAIN, 40));

g.drawString("World!", 30, 70);

} }

F ile H e llo W o rld .h tm l pe r il b ro w s e r

<HTML> <HEAD>

<TITLE> Un semplice programma </TITLE>

</HEAD> <BODY>

Output del programma:<BR>

<APPLET CODE="HelloWorld.class" WIDTH=250 HEIGHT=100></APPLET>

</BODY> </HTML>

S en z a c ono sc e re la p rog ra mm a z ione g ra fic a e ad e v en ti s i fa m o lto po c o .

In te rn et e WWW - 34 Java S c ri p t

In a lte rna tiv a a lle A pp le t, s i po ss ono rende re le pag ine H T M L d ina m ic he g ra z ie a ll'u s o d i J a v a S c rip t.

U no s pe c ia le T A G H T M L può c on tene re de i p icc o li pe zz i d i p rog ra mm a sc ritt i i n un linguagg io d i p rog ra mm a z ione c he è una v e rs ione s e m p lif ic a ta d i J a v a .

I p rog ra mm i s pe c ifi c ano quando de v ono e ss e re e s egu iti . In pa rti c o la re , s pe c ifi c ano g li "e v en ti" c he ne c au s ano l'e s e c u z ione : il c lick de l m ou s e in un c e rto pun to , il pa ss agg io de l m ou s e s u una c e rta pa ro la .

L 'e s e c u z ione può c au s a re a z ion i d iv e rs e , qua li l'appa riz ione d i fine s tr e o il c a m b ia m en to d ina m ic o de ll'a s pe tt o de lla pag ine .

E se m p io :

<a HREF="provejs.html" onClick =" var n = 0; alert('apro 2 finestre'); n = n + 1; alert('Apro finestra numero ' + n); window.open('http://www.dsi.unimo.it'); n = n + 1; alert('Apro finestra numero ' + n); window.open('http://www.dsi.unimo.it') "> DSI</a><br>

G u a rd a re il s it o W e b d e l c o rs o p e r a pp ro fond ir e le c ono sce n z e s u Ja v a S c ri p t

Riferimenti

Documenti correlati

I più importanti sistemi operativi per PC erano il CP/M-80 (della Digital Research per le CPU Intel 8080 e Z-80) e l’MS-DOS, della Microsoft, simile al

These are total flexion and extension of the lumbar spine (Fig. 7A,B), the AP distance and cross-sectional area of the spinal canal (Fig. 8), the cross-sectional area of the nerve

Se il sig no r R o b erto si sbriga tanto presto dei signori ministri protestanti, ce ne vorrebbe un reggim ento a disputare con lui.. Intanto che il

Acqua Fontana Cimitero Via Crippa ph6,5 - 9,5 colore odore conducibilità torbidità cloruri250 mg/l nitrati50 mg/l solfati250 mg/l nitriti 0,5 mg/l ammoniaca 0,5 mg/l batteri coliformi

Da quella descrizione segue che nelle ipotesi la seconda condizione pu` o essere sostituita con la condizione pi` u debole - ciascun autovalore ha molteplicit` a geometrica maggiore

Rette parallele, incidenti, sghembe In ciascuno dei seguenti casi stabilire se le rette sono parallele, incidenti o sghembe, e nel caso, in cui siano complanari,

Ÿ generano il sottospazio vettoriale (passante per l’origine !) di dim 2 associato al sottoinsie- me affine dato A, detta giacitura: il piano &lt; B-A, C-A&gt;, che contiene tutti

delle soluzioni del sistema omog.. a) Verificare che per P, Q, S passa una ed una sola circonferenza... b) Determinare la circonferenza passante per P,