Wyatt Pearsall November 2013.  HyperText Transfer Protocol.

Slides:



Advertisements
Similar presentations
REST Vs. SOAP.
Advertisements

REST Introduction 吴海生 博克软件(杭州)有限公司.
4.01 How Web Pages Work.
Layer 7- Application Layer
Integration of Applications MIS3502: Application Integration and Evaluation Paul Weinberg Adapted from material by Arnold Kurtz, David.
Definitions, Definitions, Definitions Lead to Understanding.
Topics in this presentation: The Web and how it works Difference between Web pages and web sites Web browsers and Web servers HTML purpose and structure.
Browsing the World Wide Web. Spring 2002Computer Networks Applications Browsing Service Allows one to conveniently obtain and display information that.
Computer Science 101 Web Access to Databases Overview of Web Access to Databases.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
Section 13.1 Add a hit counter to a Web page Identify the limitations of hit counters Describe the information gathered by tracking systems Create a guest.
Web server and web browser It’s a take and give policy in between client and server through HTTP(Hyper Text Transport Protocol) Server takes a request.
1 Web Servers (IIS and Apache) Outline 9.1 Introduction 9.2 HTTP Request Types 9.3 System Architecture 9.4 Client-Side Scripting versus Server-Side Scripting.
1 CS 131 Wrap Up Fall 2008 What Good is Programming?
IT 210 The Internet & World Wide Web introduction.
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Lecturer: Ghadah Aldehim
16-1 The World Wide Web The Web An infrastructure of distributed information combined with software that uses networks as a vehicle to exchange that information.
Rensselaer Polytechnic Institute Shivkumar Kalvanaraman, Biplab Sikdar 1 The Web: the http protocol http: hypertext transfer protocol Web’s application.
1 Computer Communication & Networks Lecture 28 Application Layer: HTTP & WWW p Waleed Ejaz
Chapter 6 The World Wide Web. Web Pages Each page is an interactive multimedia publication It can include: text, graphics, music and videos Pages are.
REST.  REST is an acronym standing for Representational State Transfer  A software architecture style for building scalable web services  Typically,
HOW WEB SERVER WORKS? By- PUSHPENDU MONDAL RAJAT CHAUHAN RAHUL YADAV RANJIT MEENA RAHUL TYAGI.
Web Engineering we define Web Engineering as follows: 1) Web Engineering is the application of systematic and proven approaches (concepts, methods, techniques,
REST - Introduction Based on material from InfoQ.com (Stefan Tilkov) And slides from MindTouch.com (Steve Bjorg) 1.
Pete Brown Developer Community Program Manager, Microsoft REST with Silverlight 5, WCF.
INTRODUCTION TO WEB APPLICATION Chapter 1. In this chapter, you will learn about:  The evolution of the Internet  The beginning of the World Wide Web,
ECEN “Internet Protocols and Modeling”, Spring 2012 Course Materials: Papers, Reference Texts: Bertsekas/Gallager, Stuber, Stallings, etc Class.
1 UNIT 13 The World Wide Web Lecturer: Kholood Baselm.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
API Crash Course CWU Startup Club. OUTLINE What is an API? Why are API’s useful? What is HTTP? JSON? XML? What is a RESTful API? How do we consume an.
1 WWW. 2 World Wide Web Major application protocol used on the Internet Simple interface Two concepts –Point –Click.
1 Alternative view on Internet Computing Web 1.0 –Web 1.0 is first generation, Web Information based. Driven by Information provider. Web 2.0 Ajax enabled.
INTERNET PROTOCOLS. Microsoft’s Internet Information Server Home Page Figure IT2031 UNIT-3.
IS-907 Java EE World Wide Web - Overview. World Wide Web - History Tim Berners-Lee, CERN, 1990 Enable researchers to share information: Remote Access.
Advanced Web Technologies Lecture #4 By: Faraz Ahmed.
CSCE 315 – Programming Studio Spring Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Web Services. 2 Internet Collection of physically interconnected computers. Messages decomposed into packets. Packets transmitted from source to destination.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
Website Design, Development and Maintenance ONLY TAKE DOWN NOTES ON INDICATED SLIDES.
 An essential supporting structure of any thing  A Software Framework  Has layered structure ▪ What kind of functions and how they interrelate  Has.
The Internet. Important Terms Network Network Internet Internet WWW (World Wide Web) WWW (World Wide Web) Web page Web page Web site Web site Browser.
Java Programming: Advanced Topics 1 Building Web Applications Chapter 13.
COSC 2328 – Web Programming.  PHP is a server scripting language  It’s widely-used and free  It’s an alternative to Microsoft’s ASP and Ruby  PHP.
COM: 111 Introduction to Computer Applications Department of Information & Communication Technology Panayiotis Christodoulou.
1 UNIT 13 The World Wide Web. Introduction 2 Agenda The World Wide Web Search Engines Video Streaming 3.
1 UNIT 13 The World Wide Web. Introduction 2 The World Wide Web: ▫ Commonly referred to as WWW or the Web. ▫ Is a service on the Internet. It consists.
6/28/ A global mesh of interconnected networks (internetworks) meets these human communication needs. Some of these interconnected networks are.
CIS 1203 Web Technologies Introduction to the Internet and the WWW.
National College of Science & Information Technology.
Web Development. Agenda Web History Network Architecture Types of Server The languages of the web Protocols API 2.
4.01 How Web Pages Work.
RESTful Sevices Distributed Objects Presented by: Shivank Malik
Web Development Web Servers.
REST- Representational State Transfer Enn Õunapuu
Evolution of Internet.
Some bits on how it works
Some Common Terms The Internet is a network of computers spanning the globe. It is also called the World Wide Web. World Wide Web It is a collection of.
Providing Network Services
IS333D: MULTI-TIER APPLICATION DEVELOPMENT
Computer Communication & Networks
Chapter 27 WWW and HTTP.
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
HTTP and Abstraction on the Internet / The Need for DNS
World Wide Web “WWW”, "Web" or "W3". World Wide Web “WWW”, "Web" or "W3"
Middleware, Services, etc.
Planning and Storyboarding a Web Site
4.01 How Web Pages Work.
NEECOM – May 22, 2019 Todd L Gould, CEO
Presentation transcript:

Wyatt Pearsall November 2013

 HyperText Transfer Protocol

 HTTP is location driven

 Google.com   URL structure allows access to every resource on every computer

 And powerful

 Accessing any resource just by knowing the URL is what makes the web, the web.

 Physical wires  Networks  Sending bits over wires  Interpreting bits as information

 Focus on HTTP  Everything else might as well be Chinese

 User types URL  Browser makes request to server  Server parses request and responds  Browser shows webpage

 Contain metadata about the request and response

 Host: from whom we are requesting the page  Method: What to do with the resource  Accept: the type of files we’ll accept  Cookie: user information  User Agent: What the client is (browser, web crawler, command line program, screen reader)

 Content type: type of file coming back  Content length: file size  Status: what has happened to the request Most important

 Oddly, google can’t find wyattisgreat.html

 A little rarer, but you can find them in the wild

water.ca.gov issues 302 Found on wyattisgreat.html… no surprises there.

 Standard responses allow for a client to know nothing about a server  Can understand any server that uses codes

 Standard responses allow for a client to know nothing about a server  Can understand any server that uses codes  Servers need to know nothing about clients  Can serve any client that understands codes

 Like status codes, allow clients and servers to know little about each other

 Only 9, only 5 are common.

 Often called verbs  Time for a tangent about why using just a few verbs lets us do a lot with little complexity

 Internet is organized to provide access to infinite resources

 Resources, as discrete things, are nouns.

 Internet is organized to provide access to infinite resources  Resources, as discrete things, are nouns.  Request methods, as verbs, act upon these nouns

 Most ordinary nouns have many associated verbs  Drive a car, wash a car, crash a car, gas up a car, etc.

 Some verbs apply to many nouns, like “buy”  You can buy most things: ◦ Buy a car ◦ Buy a can of soda ◦ Buy a book

 Some verbs apply to many nouns, like “buy”  You can buy most things: ◦ Buy a car ◦ Buy a can of soda ◦ Buy a book

 There are many more verbs that aren’t universal ◦ Can’t drink a book ◦ Can’t drive a soda ◦ Can’t read a car

 There are many more verbs that aren’t universal ◦ Can’t drink a book ◦ Can’t drive a soda ◦ Can’t read a car

 If limited to just a few verbs, pick the universal ones

 This is what HTTP does  Limits itself to common verbs like GET, POST, PUT, and DELETE

 With just a few verbs, clients don’t need to know about the capabilities of implementations of a server  Development of browsers and servers can advance without each of them having to know about an entire internet full of proprietary commands

 These ideas of HTTP apply to REST ◦ (REpresentational State Transfer)  So we’re on the right track

 Big enterprise players started championing SOAP (Simple Object Access Protocol) as a way for systems to communicate.  Remote Procedure Call where XML encodes a series of commands that can be run on a computer and a communication layer is built to allow messages to be passed back and forth in XML to run these specific commands.

 If it sounds complicated, that’s because it is  There are many complex extensions and specifications

 If the web is so successful, systems should interact in the same way.  Client/Server separation  Uniform Interface (few verbs)  Caching ◦ Network requests are the slowest thing a computer can do besides load bathymetry points in ArcMap

 APIs are a structured way for programs to communicate  A key to using someone else's complex program in a simple, defined way.

 Facebook has petabytes of data on their servers and very complicated ways of ordering, storing, and searching this data.

 906/picture?type=large

 picture?type=large

 Plugging in the PageID of these pages into a URL structure defined by the facebook API results in the requested images

 With a normal user interface, you might click a link or button, start typing in a form, or press the back button if you are browsing the web.

 Common tasks which have expected responses  If a link doesn't take you where you expect, a field doesn't work like you think it should or if a website hijacks your back button.. it is a problem.

 You have to adhere to a contract that your software will do what a user expects it to do.  When you fulfill this contract, your application seems intuitive.  When you break it, your users will leave

 APIs seek to allow straightforward communication with a service  Whether it is a Twitter Client tweeting on a user's behalf, or a map showing USGS earthquake data, APIs exist to allow easy access to complex applications and vast amounts of data.

 A service is a self-contained program used through an API to provide its functionality to a client or user.  REST is often used to keep the concerns of the service separate from the client so that it can be maintainable and scalable.

 So how does this apply to all of you?

 Publish a map to ArcGIS Server ◦ Click through some dialogs in ArcMap  These services become immediately available for use by any client that can navigate the API

 URL of the resource  Operations you can perform  How it relates to other resources.

 Operate denoted by URL  By supplying proper parameters, can identify just like in ArcMap

 Don’t need to use Server API directly  Use the JavaScript (or Silverlight or Flex) APIs to quickly build a useful application.

 These APIs encapsulate the Server API, allowing access to data from powerful programming environments.  APIs all the way down