cs 3870/cs 5870

36
CS 3870/CS 5870 Web Protocols, Technologies and Applications

Upload: yepa

Post on 19-Mar-2016

85 views

Category:

Documents


0 download

DESCRIPTION

Web Protocols, Technologies and Applications. CS 3870/CS 5870. Instructor. Dr. Qi Yang (call me “Qi”) Office: Ullrich 213 Home page http://www.uwplatt.edu/~yangq. Syllabus Any Questions?. Course Work. 10 Labs: 200 points 4 Tests : 200 points Bonus points possible. Tests. All Hands-on - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CS 3870/CS 5870

CS 3870/CS 5870

Web Protocols, Technologies and Applications

Page 2: CS 3870/CS 5870

Instructor

• Dr. Qi Yang• Office: Ullrich 213• Home page

http://people.uwplatt.edu/~yangq/

2

Page 3: CS 3870/CS 5870

Course Work: Undergraduate

• Programs: 200 points• Tests : 200 points

• Total : 400 points

3

Page 4: CS 3870/CS 5870

Course Work: Graduate

• Programs: 200 points• Tests : 200 points• Project : 100 points

• Total : 500 points

4

Page 5: CS 3870/CS 5870

Grading: Undergraduate Course Grade Points Percentage Grade Points A 368 - 400 92% 4.0 A- 356 - 367 89% 3.7 B+ 348 - 355 87% 3.3 B 328 - 347 82% 3.0 B- 316 - 327 79% 2.7 C+ 308 - 315 77% 2.3 C 288 - 307 72% 2.0 C- 276 - 287 69% 1.7 D+ 268 - 275 67% 1.3 D 240 - 267 60% 1.0 F below 240 0.0

No Curve5

Page 6: CS 3870/CS 5870

6

Grading: GraduateGrade Total Points Percentage Grade Points A 460 - 500 92% 4.0 A - 445 - 459 89% 3.7 B + 435 - 444 87% 3.3 B 410 - 434 82% 3.0 B - 395 - 409 79% 2.7 C + 385 - 394 77% 2.3 C 360 - 384 72% 2.0 C - 345 - 359 69% 1.7 D + 335 - 344 67% 1.3 D 300 - 334 60% 1.0 F Below 300 0.0

No Curve!

Page 7: CS 3870/CS 5870

Tests

• All Hands-on• Final Exam: Test 4• Graduating Senior: Must take Test 4

7

Page 8: CS 3870/CS 5870

Syllabus

Any Questions?

8

Page 9: CS 3870/CS 5870

9

What is a Computer?

Storage

CPU

MEMORY

Input Output

Network

Page 10: CS 3870/CS 5870

10

Local Network at UWP

• File Server: J:\, S:\, K:\• Apps• Rights• …

Ull 213

Ull 006Res Hall

Bears Den

. . . Lab 206

Page 11: CS 3870/CS 5870

11

The Internet

UWP

TownsvilleAustralia

SWUST

DarmstadtGermany

UW

. . . . . . . . . .

Page 12: CS 3870/CS 5870

The Internet• A “network of networks”• Origins:

– Kleinrock (1960s): click here– ARPANET (1969): click here

• Core protocols: TCP/IP• Domain name system (DNS)

– Maps numeric “IP” addresses to “domain” names– 1982: HOSTS.TXT– Now: distributed, hierarchical database

12

Page 13: CS 3870/CS 5870

13

TCP/IP

Transmission Control Protocol / Internet Protocol

Turing Award 2004 http://en.wikipedia.org/wiki/Turing_Award

Page 14: CS 3870/CS 5870

14

Internet Applications

• Email: Simple Mail Transfer Protocol (SMTP) Post Office Protocol (POP) Internet Messaging Access Protocol (IMAP)• Telnet: remote terminal • FTP: File Transfer Protocol • Gopher ... • ...

Page 15: CS 3870/CS 5870

15

Internet Applications

• Console Applications • GUI Applications

Page 16: CS 3870/CS 5870

16

World Wide Web (WWW)• GUI Internet Application • Information Super High Way• Business• Household• HTTP: Hyper Text Transfer Protocol• HTTPS: Hyper Text Transfer Protocol Security• HTML: Hypertext Makeup Language• HTML5• W3C - World Wide Web Consortium

Page 17: CS 3870/CS 5870

Application Protocols• HTTP

• HTTPS• SMTP• POP

• IMAP• FTP

• SOAP• …

All are based on TCP/IP17

Page 18: CS 3870/CS 5870

18

A Brief History of the WWW

CERN 1989(Geneva European Laboratory for Particle Physics) Initial Proposal A common and consistent user interface Incorporation of a wide range of technologies and document types A “universal readership”1990: first line browser1992: a few browsers and 50 web sites1993: Mosaic browser for X Windows at NCSA (UIUC), 500 web sitesSince 1994: more browsers, web sites, web servers, search engines

Click here

Page 19: CS 3870/CS 5870

19

WWW Basics

– Web sites: Web content providers– Web browsers– Hypertext Transfer Protocol (HTTP)– Hypertext Markup Language (HTML)– Uniform Resource Locator (URL)– Web navigation and search tools– Gateways to non-Web resources– XML (eXtended Markup Language) – XHTML (Extensible HyperText Markup Language) – …

Page 20: CS 3870/CS 5870

What makes up a web site?

Three main components to every web site:1.Web server (always-on program listening

for requests from web browsers)2.Web objects (text and binary documents)3.Web browser

– Not really part of a website—or is it?– If a tree falls in a forest but nobody is around

to hear it, does it make a sound?

20

Page 21: CS 3870/CS 5870

Web browsers

• GUI, Client-Server application• Request content from web servers• Download and display content to user• First GUI browser• What browser do YOU use?• URL: Uniform/Universal Resource Locator

21

Page 22: CS 3870/CS 5870

URL• Format

protocol://host:port/path• Protocol

http, https, ftp, telnet, etc.• Host

IP address or name of server (DNS)• Port

default: 80• Path

Where to find the desired web object

22

Page 23: CS 3870/CS 5870

23

HTTP

• Application-level protocol• For collaborative, distributed, hypermedia

information systems• Client-Server• LOTC Locate Open Transfer (request/response) Close

Page 24: CS 3870/CS 5870

24

HTTP• Connection• Request URI Method GET, HEAD, POST, PUT, DELETE Example: GET /index.html HTTP/1.1\r\n• Server Response: 200, 403, 404, etc.• Close

Page 25: CS 3870/CS 5870

25

HTML

• Display data in browser using tags• HTML History • Patent

Page 26: CS 3870/CS 5870

26

HTML

• If you don’t know HTML, You must teach yourself HTML

• View page source

• Basic HTML elements

Page 27: CS 3870/CS 5870

27

Non-Web Resources

• Legacy systems• Databases

Page 28: CS 3870/CS 5870

Advanced Web Technologies

• CGI (Common Gateway Interface)• PHP• Java Applets• ASP.NET• …

28

Page 29: CS 3870/CS 5870

29

WWW and Windows Programs

• Windows Program Variables to keep track of state• WWW and HTTP Stateless “Universal Readership”• Web Applications How to keep state information?

Page 30: CS 3870/CS 5870

Program 1

Due 5:00 PM, Monday (Week 2)September 11, 2017

30

Page 31: CS 3870/CS 5870

31

Create a Folder as Your Web Site

• On Local File System• Any Drive

– J: drive is my choice– USB drive– Lap top

• Create a folder as your Web site– Any name

• Example: J:\WebPro

Page 32: CS 3870/CS 5870

MS Visual Studio• Every PC in Ullrich• Free Copy on your PC• Will receive email about it• Follow instructions to get your copy• Start VS 2015

– Sign in: (not now, maybe later)– Development Settings: Visual Basic– You are encouraged to use C#

32

Page 33: CS 3870/CS 5870

33

Open Web Site on File System

• Start VS• Open Web Site• Do not try New Project or New Web Site!• File System• Select your Web site folder created earlier

– Example: J:\WebPro

Page 34: CS 3870/CS 5870

34

Creating Folder

• Solution Explore• Right Click on Web Site• (Add)• New Folder• Prog1

Page 35: CS 3870/CS 5870

35

Creating HTML Pages

• Right click on Prog1• Add• HTML Page• (Different Views)

– Design– Source: HTML code– Split– Not for HTML pages

Page 36: CS 3870/CS 5870

36

Deploy Your Web Site on Alpha• Build• Publish Web App• Create a Profile

– Server: alpha.ion.uwplatt.edu– Site name: UserName– User name: ion\username– Destination: https://alpha.ion.uwplatt.edu/UserName/Prog1

• Validate Connection– Just once