Networks Programming Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)
|
|
- Howard Bradford
- 5 years ago
- Views:
Transcription
1 Networks Programming Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm pk.linkedin.com/in/armahmood abdulmahmood-sss alphasecure mahmood_cubix VC++, VB, ASP
2
3 Communicating with Server- Side Programs Through GET The URL class makes it easy for Java applets and applications to communicate with serverside programs such as CGIs, servlets, PHP pages, and others that use the GET method. Server-side programs that use the POST method require the URLConnection class (will be discussed later)
4 HTML form input The method the form uses should be the value of the METHOD attribute of the FORM element. URL that precedes the query string is given by the value of the ACTION attribute of the FORM element. Finally, the names in the name-value pairs are simply the values of the NAME attributes of the INPUT elements. Example: The program that processes the form is accessed via the URL It has four separate name-value pairs, three of which have default values.
5 <form name="search" action=" method="get"> <input name="q" /> <input type="hidden" value="cafeconleche.org" name="domains" /> <input type="hidden" name="sitesearch" value="cafeconleche.org" /> <input type="hidden" name="sitesearch2" value="cafeconleche.org" /> <br /> <input type="image" height="22" width="55 src="images/search_blue.gif" alt="search" border="0 name="search-image" /> </form>
6 The UI for the Open Directory
7 The UI for the Open Directory <form class="center mb1em" action="search" method="get"> <input style="*vertical-align:middle;" size="45" name="q" value="" class="qn"> <input style="*vertical-align:middle; *padding-top:1px;" value="search" class="btn" type="submit"> <a href="search?type=advanced"><span class="advn">advanced</span></a> </form> There are only two input fields in this form: the Submit button and a text field named q. Thus, to submit a search request to the Open Directory, you just need to append q=searchterm to
8 Open Directory search program
9 Accessing Password-Protected Sites The Authenticator Class The java.net package : Authenticator class you can use to provide a username and password for sites that protect themselves using HTTP authentication: public abstract class Authenticator extends Object Since Authenticator is an abstract class, you must subclass it. To make the URL class use the subclass, install it as the default authenticator by passing it to the static Authenticator.setDefault() method: public static void setdefault(authenticator a) For example, if you ve written an Authenticator subclass named DialogAuthenticator, you d install it like this: Authenticator.setDefault(new DialogAuthenticator());
10 The Authenticator Class The HTTP server provides the prompt. It s typically the name of the realm for which authentication is required. (Some large web servers such as have multiple realms, each of which requires different usernames and passwords.) Untrusted applets are not allowed to ask the user for a name and password. Trusted applets can do so, but only if they possess requestpasswordauthentication getpasswordauthentication(), collect username /password from the user or some other source protected PasswordAuthentication getpasswordauthentication()
11 The Authenticator Class Usernames and passwords are cached within the same virtual machine session. Once you set the correct password for a realm, you shouldn t be asked for it again unless you ve explicitly deleted the password by zeroing out the char array that contains it. You can get more details about the request by invoking any of these methods inherited from the Authenticator superclass: protected final InetAddress getrequestingsite() protected final int getrequestingport() protected final String getrequestingprotocol() protected final String getrequestingprompt() protected final String getrequestingscheme() protected final String getrequestinghost() protected final String getrequestingurl() protected Authenticator.RequestorType getrequestortype()
12 The Authenticator Class requestpasswordauthentication() or return null if that information is not available. (If the port isn t available, getrequestingport() returns -1.)
13 The PasswordAuthentication Class public PasswordAuthentication(String username, char[] password) Each is accessed via a getter method: public String getusername() public char[] getpassword()
14 JPasswordField Class : Swing public class JPasswordField extends JTextField JPasswordField also stores the passwords as a char array so that when you re done with the password you can overwrite it with zeros. It provides the getpassword() method to return this: public char[] getpassword() Otherwise, you mostly use the methods it inherits from the JTextField superclass.
15 download password-protected web pages
16 HTTP HTTP) is a standard that defines how a web client talks to a server and how data is transferred from the server back to the client. HTTP is application-level protocol & uses (TCP) as a transport mechanism. Most prolific network application protocol in the short history of the Internet.
17 HTTP request/response cycle For each request (client - server), there is a sequence of 4 steps: Client opens a TCP connection to server on port 80 (default). Client sends a message to server requesting the resource at a specified path. Request includes a header, and optionally a blank line followed by data for the request. Server sends a response to client which begins with a response code, a header full of metadata, a blank line, and the requested document or an error message. Server closes the connection.
18 HTTP request/response cycle
19 request / response format Each request and response has the same basic form: a header line, an HTTP header containing metadata, a blank line, and then a message body. A typical client request looks something like this: GET /index.html HTTP/1.1 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:20.0) Gecko/ Firefox/20.0 Host: en.wikipedia.org Connection: keep-alive Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip, deflate Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 GET requests like this one do not contain a message body, so the request ends with a blank line.
20 HTTP request The first line is called the request line, and includes a method, a path to a resource, and the version of HTTP. Lines in the header are terminated by a carriage-return linefeed pair. User-Agent, tells server what browser is being used. The following line says that the request comes from version 2.4 of the Lynx browser: User-Agent: Lynx/2.4 libwww/2.1.4 oldest first-generation browsers also include a Host field specifying the server s name, which allows web servers to distinguish between different named hosts served from the same IP address: Host:
21 HTTP request Keyword Accept, tells the server the types of data the client can handle (though servers often ignore this). For example, the following line says that the client can handle four MIME media types, corresponding to HTML documents, plain text, and JPEG and GIF images: Accept: text/html, text/plain, image/gif, image/jpeg MIME (Multi-Purpose Internet Mail Extensions) MIME types are classified at two levels: a type and a subtype. Finally, the request is terminated with a blank line that is, two carriage return/linefeed pairs, \r\n\r\n.
22 MIME types Eight top-level types have been defined: text/* for human-readable words image/* for pictures model/* for 3D models such as VRML files audio/* for sound video/* for moving pictures, possibly including sound application/* for binary data message/* for protocol-specific envelopes such as messages and HTTP responses multipart/* for containers of multiple documents and resources
23 MIME types RFC 1341 The Content-Type field for multipart entities requires one parameter, "boundary", which is used to specify the encapsulation boundary. Content-Type: multipart/mixed; boundary=gc0p4jq0m2yt08ju534c0p This indicates that the entity consists of several parts, and that the parts are each preceded by the line --gc0p4jq0m2yt08ju534c0p Encapsulation boundaries must > 70 characters. Current list of registered MIME types is available from assignments/media-types/ In addition, nonstandard custom types and subtypes can be freely defined as long as they begin with x-. For example, Flash files are commonly assigned the type application/x-shockwave-flash.
24 MIME multipart example From: Nathaniel Borenstein To: Ned Freed Subject: Sample message MIME-Version: 1.0 Content-type: multipart/mixed; boundary="simple boundary" This is the preamble. It is to be ignored, though it is a handy place for mail composers to include an explanatory note to non-mime compliant readers. --simple boundary This is implicitly typed plain ASCII text. It does NOT end with a linebreak. --simple boundary Content-type: text/plain; charset=us-ascii This is explicitly typed plain ASCII text. It DOES end with a linebreak. --simple boundary-- This is the epilogue. It is also to be ignored.
25 HTTP response Server sees blank line; it sends response over the same connection. Response: a status line, a header (name: value syntax), a blank line, and the requested resource: HTTP/ OK Date: Sun, 21 Apr :12:46 GMT Server: Apache Connection: close Content-Type: text/html; charset=iso Content-length: 115 <html> <head> <title> A Sample HTML file </title> </head> <body> The rest of the document goes here </body> </html>
26 HTTP response The first line indicates the protocol the server is using (HTTP/1.1), followed by a response code. 200 OK is the most common response code. 1XX Informational 100 continue 101 Switching Protocols 2XX Successful Request succeeded. 200 OK 201 Created 202 Accepted 3XX Redirection Relocation 301 Moved Permanently 301 Moved Temporarily 305 Use Proxy 4XX Client error. 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Found 405 Method Not Allowed 406 Not Acceptable 407 Proxy Authentication Required 5XX Server error. 500 Internal Server Error 502 Bad Gateway 503 Service Unavailable
27 4 main HTTP Methods GET retrieves a representation of a resource. side effect free can be repeated without concern if it fails. (idempotent) its output is often cached, (though it can be controlled with the right headers) GET requests can be bookmarked. PUT uploads representation of a resource to server at a known URL. side effect free can be repeated without concern if it fails. (idempotent)
28 4 main HTTP Methods DELETE removes a resource from a specified URL. side effect free can be repeated without concern if it fails. (idempotent) POST POST is the most general method. It too uploads a representation of a resource to a server at a known URL. POST should be used for unsafe operations that should not be repeated, such as making a purchase.
29 When to use GET or POST GET is intended for noncommital actions, like browsing a static web page, adding an item to a shopping cart POST : for actions that commit to something, like placing the order. Misconception: reason for preferring POST over GET is when forms require large amounts of input. Today all major browsers are good up to URL lengths of at least 2,000 characters. If you have more form data to submit than that, you may indeed need to support POST;
30 Other HTTP methods HEAD: which acts like a GET except it only returns the header for the resource, not the actual data. Used to check modification date of a file To see that a copy stored in local cache is still valid.
31
32 Opening URLConnections A program that uses the URLConnection class directly follows this basic sequence of steps: 1. Construct a URL object. 2. Invoke the URL object s openconnection() method to retrieve a URLConnection object for that URL. 3. Configure the URLConnection. 4. Read the header fields. 5. Get an input stream and read data. 6. Get an output stream and write data. 7. Close the connection.
33 Reading Data from a Server 1. Construct a URL object. 2. Invoke the URL object s openconnection() method to retrieve a URLConnection object for that URL. 3. Invoke the URLConnection s getinputstream() method. 4. Read from the input stream using the usual stream API. The differences between URL and URLConnection : URLConnection provides access to the HTTP header. URLConnection can configure the request parameters sent to the server. URLConnection can write data to the server as well as read data from the server.
34 Download web page with a URLConnection
35 Reading the Header Retrieving Specific Header Fields The first six methods request specific, particularly common fields from the header. These are: Content-type Content-length Content-encoding Date Last-modified Expires
36 public String getcontenttype() The getcontenttype() method returns the MIME media type of the response body. It relies on the web server to send a valid content type. It throws no exceptions and returns null if the content type isn t available. Examples: text/html, text/plain, image/gif, application/xml, image/jpeg. If the content type is some form of text, this header may also contain a character set part: Content-type: text/html; charset=utf-8 Content-Type: application/xml; charset=iso jp
37 Download a web page with the correct character set
38 public int getcontentlength() Java 7 adds a getcontentlengthlong() method that works just like getcontentlength() except that it returns a long instead of an int and thus can handle much larger resources: public int getcontentlengthlong() // Java 7
39 Downloading a binary file from a website and saving it to disk
40 public String getcontentencoding() returns a String that tells you how the content is encoded. With HTTP servers, content is unencoded, and method returns null It throws no exceptions. commonly used content encoding is x-gzip, which can be straightforwardly decoded using a java.util.zip.gzipinputstream Character encoding vs Content encoding : Character encoding is determined by the Content-type header; specifies how characters are encoded in bytes. Content encoding specifies how the bytes are encoded in other bytes.
41
42 public long getdate() returns a long that tells when document was sent, in milliseconds since 12 AM, January 1, [Linux epoch] You can convert it to a java.util.date. For example: Date documentsent = new Date(uc.getDate());
43 Ex: Return the header
44 Retrieving Arbitrary Header Fields Use these methods to get header fields that Java s designers did not plan for. If the requested header is found, it is returned. Otherwise, the method returns null. public String getheaderfield(string name) The getheaderfield() method returns the value of a named header field. The name of the header is not case sensitive String contenttype = uc.getheaderfield("content-type"); String contentencoding = uc.getheaderfield("content-encoding")); String data = uc.getheaderfield("date"); String expires = uc.getheaderfield("expires"); String contentlength = uc.getheaderfield("content-length"); public String getheaderfieldkey(int n) returns the key (i.e., the field name) of the nth header field public String getheaderfield(int n) returns the value of the nth header field. public int getheaderfieldint(string name, int default) This method retrieves the value of the header field name int contentlength = uc.getheaderfieldint("content-length", -1); returns 1 if the Content-length header isn t present.
45 Print the entire HTTP header
46 Authenticator class
Database Management System
Database Management System Engr. Abdul-Rahman Mahmood MS, MCP, QMR(ISO9001:2000) Usman Institute of Technology University Road, Karachi armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationHow to work with HTTP requests and responses
How a web server processes static web pages Chapter 18 How to work with HTTP requests and responses How a web server processes dynamic web pages Slide 1 Slide 2 The components of a servlet/jsp application
More informationNetworks Programming Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)
Networks Programming Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationHypertext Transport Protocol
Hypertext Transport Protocol HTTP Hypertext Transport Protocol Language of the Web protocol used for communication between web browsers and web servers TCP port 80 HTTP - URLs URL Uniform Resource Locator
More informationCOSC 2206 Internet Tools. The HTTP Protocol
COSC 2206 Internet Tools The HTTP Protocol http://www.w3.org/protocols/ What is TCP/IP? TCP: Transmission Control Protocol IP: Internet Protocol These network protocols provide a standard method for sending
More informationThe HTTP protocol. Fulvio Corno, Dario Bonino. 08/10/09 http 1
The HTTP protocol Fulvio Corno, Dario Bonino 08/10/09 http 1 What is HTTP? HTTP stands for Hypertext Transfer Protocol It is the network protocol used to delivery virtually all data over the WWW: Images
More informationLecture 7b: HTTP. Feb. 24, Internet and Intranet Protocols and Applications
Internet and Intranet Protocols and Applications Lecture 7b: HTTP Feb. 24, 2004 Arthur Goldberg Computer Science Department New York University artg@cs.nyu.edu WWW - HTTP/1.1 Web s application layer protocol
More informationIntroduction to Computing
Introduction to Computing Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net
More informationInformation System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)
Information System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationLecture 3. HTTP v1.0 application layer protocol. into details. HTTP 1.0: RFC 1945, T. Berners-Lee HTTP 1.1: RFC 2068, 2616
Lecture 3. HTTP v1.0 application layer protocol into details HTTP 1.0: RFC 1945, T. Berners-Lee Lee,, R. Fielding, H. Frystyk, may 1996 HTTP 1.1: RFC 2068, 2616 Ascii protocol uses plain text case sensitive
More informationDatabase Management System
Database Management System Engr. Abdul-Rahman Mahmood MS, MCP, QMR(ISO9001:2000) Usman Institute of Technology University Road, Karachi armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationWorld Wide Web, etc.
World Wide Web, etc. Alex S. Raw data-packets wouldn t be much use to humans if there weren t many application level protocols, such as SMTP (for e-mail), HTTP & HTML (for www), etc. 1 The Web The following
More informationCISC 4700 L01 Network & Client-Server Programming Spring Harold, Chapter 7: URLConnections
CISC 4700 L01 Network & Client-Server Programming Spring 2016 Harold, Chapter 7: URLConnections URLConnection: abstract class representing active connection to resource specified by URL. Provides more
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationHTTP Protocol and Server-Side Basics
HTTP Protocol and Server-Side Basics Web Programming Uta Priss ZELL, Ostfalia University 2013 Web Programming HTTP Protocol and Server-Side Basics Slide 1/26 Outline The HTTP protocol Environment Variables
More informationWeb Technology. COMP476 Networked Computer Systems. Hypertext and Hypermedia. Document Representation. Client-Server Paradigm.
Web Technology COMP476 Networked Computer Systems - Paradigm The method of interaction used when two application programs communicate over a network. A server application waits at a known address and a
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationWeb, HTTP and Web Caching
Web, HTTP and Web Caching 1 HTTP overview HTTP: hypertext transfer protocol Web s application layer protocol client/ model client: browser that requests, receives, displays Web objects : Web sends objects
More information3. WWW and HTTP. Fig.3.1 Architecture of WWW
3. WWW and HTTP The World Wide Web (WWW) is a repository of information linked together from points all over the world. The WWW has a unique combination of flexibility, portability, and user-friendly features
More informationComputer Networks. Wenzhong Li. Nanjing University
Computer Networks Wenzhong Li Nanjing University 1 Chapter 8. Internet Applications Internet Applications Overview Domain Name Service (DNS) Electronic Mail File Transfer Protocol (FTP) WWW and HTTP Content
More informationWEB TECHNOLOGIES CHAPTER 1
WEB TECHNOLOGIES CHAPTER 1 WEB ESSENTIALS: CLIENTS, SERVERS, AND COMMUNICATION Modified by Ahmed Sallam Based on original slides by Jeffrey C. Jackson THE INTERNET Technical origin: ARPANET (late 1960
More informationInformation System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)
Information System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationInformation System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)
Information System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationCMSC 332 Computer Networking Web and FTP
CMSC 332 Computer Networking Web and FTP Professor Szajda CMSC 332: Computer Networks Project The first project has been posted on the website. Check the web page for the link! Due 2/2! Enter strings into
More informationHTTP Server Application
1 Introduction You are to design and develop a concurrent TCP server that implements the HTTP protocol in the form of what is commonly called a web server. This server will accept and process HEAD and
More informationWorld-Wide Web Protocols CS 571 Fall Kenneth L. Calvert All rights reserved
World-Wide Web Protocols CS 571 Fall 2006 2006 Kenneth L. Calvert All rights reserved World-Wide Web The Information Universe World-Wide Web structure: hypertext Nonlinear presentation of information Key
More informationCSE 333 Lecture HTTP
CSE 333 Lecture 19 -- HTTP Hal Perkins Department of Computer Science & Engineering University of Washington Administrivia Server-side programming exercise due Wed. morning HW4 due a week later - How s
More informationApplications & Application-Layer Protocols: FTP and (SMTP & POP)
COMP 431 Internet Services & Protocols Applications & Application-Layer Protocols: FTP and E ( & POP) Jasleen Kaur February 7, 2019 Application-Layer Protocols Outline Example client/ systems and their
More informationApplication Level Protocols
Application Level Protocols 2 Application Level Protocols Applications handle different kinds of content e.g.. e-mail, web pages, voice Different types of content require different kinds of protocols Application
More informationSoftware Engineering
Software Engineering Engr. Abdul-Rahman Mahmood MS, MCP, QMR(ISO9001:2000) Usman Institute of Technology University Road, Karachi armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm
More informationProduced by. Mobile Application Development. Higher Diploma in Science in Computer Science. Eamonn de Leastar
Mobile Application Development Higher Diploma in Science in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology
More informationLecture 25. Tuesday, November 21 CS 475 Networks - Lecture 25 1
Lecture 25 Reminders: Homework 7 due today. Homework 8 posted. Due at the beginning of the last day of class for final exam review. Programming Project 6 posted. Final project worth double. Due by 4:30pm,
More informationApplications & Application-Layer Protocols: The Web & HTTP
CPSC 360 Network Programming Applications & Application-Layer Protocols: The Web & HTTP Michele Weigle Department of Computer Science Clemson University mweigle@cs.clemson.edu http://www.cs.clemson.edu/~mweigle/courses/cpsc360
More informationCSE 333 Lecture HTTP
CSE 333 Lecture 19 -- HTTP Hal Perkins Paul G. Allen School of Computer Science & Engineering University of Washington Administrivia HW4 due a week from Thursday - How s it look? Today: http; finish networking/web
More informationEDA095 HTTP. Pierre Nugues. March 30, Lund University
EDA095 HTTP Pierre Nugues Lund University http://cs.lth.se/pierre_nugues/ March 30, 2017 Covers: Chapter 6, Java Network Programming, 4 rd ed., Elliotte Rusty Harold Pierre Nugues EDA095 HTTP March 30,
More informationCNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies
CNIT 129S: Securing Web Applications Ch 3: Web Application Technologies HTTP Hypertext Transfer Protocol (HTTP) Connectionless protocol Client sends an HTTP request to a Web server Gets an HTTP response
More informationInternet Architecture. Web Programming - 2 (Ref: Chapter 2) IP Software. IP Addressing. TCP/IP Basics. Client Server Basics. URL and MIME Types HTTP
Web Programming - 2 (Ref: Chapter 2) TCP/IP Basics Internet Architecture Client Server Basics URL and MIME Types HTTP Routers interconnect the network TCP/IP software provides illusion of a single network
More informationIntroduction to Computing
Introduction to Computing Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net
More informationNetworking. Layered Model. DoD Model. Application Layer. ISO/OSI Model
Networking Networking is concerned with the physical topology of two or more communicating entities and the logical topology of data transmission. Layered Model Systems communicate over a shared communication
More informationServer-Side Web Programming: Python (Part 1) Copyright 2017 by Robert M. Dondero, Ph.D. Princeton University
Server-Side Web Programming: Python (Part 1) Copyright 2017 by Robert M. Dondero, Ph.D. Princeton University 1 Objectives You will learn about Server-side web programming in Python Common Gateway Interface
More informationHTTP, circa HTTP protocol. GET /foo/bar.html HTTP/1.1. Sviluppo App Web 2015/ Intro 3/3/2016. Marco Tarini, Uninsubria 1
HTTP protocol HTTP, circa 1989 a resource «give me the HTML representation of thatresource» «ok, here» Client request GET /hello.txt Server response Hello, world! Client Server Http 1.1 Request line Client
More informationAssignment, part 2. Statement and concepts INFO-0010
Assignment, part 2 Statement and concepts INFO-0010 Outline Statement Implementation of concepts Objective Mastermind game using HTTP GET and HTTP POST methods The platform Architecture Root page ("/")
More informationWeb History. Systemprogrammering 2006 Föreläsning 9 Web Services. Internet Hosts. Web History (cont) 1945: 1989: Topics 1990:
Systemprogrammering 2006 Föreläsning 9 Web Services Topics HTTP Serving static content Serving dynamic content 1945: 1989: Web History Vannevar Bush, As we may think, Atlantic Monthly, July, 1945. Describes
More informationCS 43: Computer Networks. HTTP September 10, 2018
CS 43: Computer Networks HTTP September 10, 2018 Reading Quiz Lecture 4 - Slide 2 Five-layer protocol stack HTTP Request message Headers protocol delineators Last class Lecture 4 - Slide 3 HTTP GET vs.
More informationReview of Previous Lecture
Review of Previous Lecture Network access and physical media Internet structure and ISPs Delay & loss in packet-switched networks Protocol layers, service models Some slides are in courtesy of J. Kurose
More informationChapter 2: outline. 2.6 P2P applications 2.7 socket programming with UDP and TCP
Chapter 2: outline 2.1 principles of network applications app architectures app requirements 2.2 Web and HTTP 2.3 FTP 2.4 electronic mail SMTP, POP3, IMAP 2.5 DNS 2.6 P2P applications 2.7 socket programming
More informationCS 418 Web Programming Spring 2013 SENDING SCOTT G. AINSWORTH.
CS 418 Web Programming Spring 2013 SENDING EMAIL SCOTT G. AINSWORTH http://www.cs.odu.edu/~sainswor/cs418-s13/ OUTLINE Assigned Reading Chapter 11 "Sending E-mail" Chapter 17 "Using Log Files to Improve
More informationOperating Systems. Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) alphapeeler.sf.net/pubkeys/pkey.htm
Operating Systems Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationElectronic Mail (SMTP)
Electronic Mail (SMTP) Nowadays email is more popular than the paper letters called snail-mails. It is a form of network communication. Some of the other forms of network communication being voice-over-internet,
More informationLecture Overview. IN5290 Ethical Hacking. Lecture 4: Web hacking 1, Client side bypass, Tampering data, Brute-forcing
Lecture Overview IN5290 Ethical Hacking Lecture 4: Web hacking 1, Client side bypass, Tampering data, Brute-forcing Summary - how web sites work HTTP protocol Client side server side actions Accessing
More information1-1. Switching Networks (Fall 2010) EE 586 Communication and. September Lecture 10
EE 586 Communication and Switching Networks (Fall 2010) Lecture 10 September 17 2010 1-1 Announcement Send me your group and get group ID HW3 (short) out on Monday Personal leave for next two weeks No
More informationWWW: the http protocol
Internet apps: their protocols and transport protocols Application e-mail remote terminal access Web file transfer streaming multimedia remote file Internet telephony Application layer protocol smtp [RFC
More informationElectronic Mail. Three Components: SMTP SMTP. SMTP mail server. 1. User Agents. 2. Mail Servers. 3. SMTP protocol
SMTP Electronic Mail Three Components: 1. User Agents a.k.a. mail reader e.g., gmail, Outlook, yahoo 2. Mail Servers mailbox contains incoming messages for user message queue of outgoing (to be sent) mail
More informationLayered Model. DoD Model. ISO/OSI Model
Data Communications vs Networking (later) Communication is concerned with the transmission of data over a communication medium/channel between two entities. Here we are more concerned about EE issues such
More informationHTTP Reading: Section and COS 461: Computer Networks Spring 2013
HTTP Reading: Section 9.1.2 and 9.4.3 COS 461: Computer Networks Spring 2013 1 Recap: Client-Server Communication Client sometimes on Initiates a request to the server when interested E.g., Web browser
More informationGiving credit where credit is due
CSCE 230J Computer Organization Web Services Dr. Steve Goddard goddard@cse.unl.edu Giving credit where credit is due Most of slides for this lecture are based on slides created by Drs. Bryant and O Hallaron,
More informationRESTful Services. Distributed Enabling Platform
RESTful Services 1 https://dev.twitter.com/docs/api 2 http://developer.linkedin.com/apis 3 http://docs.aws.amazon.com/amazons3/latest/api/apirest.html 4 Web Architectural Components 1. Identification:
More informationCSC 4900 Computer Networks:
CSC 4900 Computer Networks: Email Professor Henry Carter Fall 2017 Villanova University Department of Computing Sciences Review Last week we talked about design principles, and the application protocols
More informationSoftware Engineering
Software Engineering Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationCORS Attacks. Author: Milad Khoshdel Blog: P a g e. CORS Attacks
Author: Milad Khoshdel Blog: https://blog.regux.com Email: miladkhoshdel@gmail.com 1 P a g e Contents What is CORS?...3 How to Test?...4 CORS Checker Script...6 References...9 2 P a g e What is CORS? CORS
More informationINTERNET ENGINEERING. HTTP Protocol. Sadegh Aliakbary
INTERNET ENGINEERING HTTP Protocol Sadegh Aliakbary Agenda HTTP Protocol HTTP Methods HTTP Request and Response State in HTTP Internet Engineering 2 HTTP HTTP Hyper-Text Transfer Protocol (HTTP) The fundamental
More informationSoftware Engineering
Software Engineering Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationHTTP Requests and Header Settings
Overview, page 1 HTTP Client Requests (HTTP GET), page 1 HTTP Server Requests (HTTP POST), page 2 HTTP Header Settings, page 2 IP Phone Client Capability Identification, page 8 Accept Header, page 9 IP
More informationEDA095 URLConnections
EDA095 URLConnections Pierre Nugues Lund University http://cs.lth.se/home/pierre_nugues/ March 30, 2017 Covers: Chapter 7, Java Network Programming, 4 th ed., Elliotte Rusty Harold Pierre Nugues EDA095
More informationElectronic Mail Paradigm
Electronic Mail Paradigm E-mail uses the client-server model. E-mail was designed as an electronic extension of the old paper office memo. - A quick and easy means of low-overhead written communication.
More informationWeb Programming 4) PHP and the Web
Web Programming 4) PHP and the Web Emmanuel Benoist Fall Term 2013-14 Berner Fachhochschule Haute cole spcialise bernoise Berne University of Applied Sciences 1 PHP a language for Web applications Presentation
More informationNotes beforehand... For more details: See the (online) presentation program.
Notes beforehand... Notes beforehand... For more details: See the (online) presentation program. Topical overview: main arcs fundamental subjects advanced subject WTRs Lecture: 2 3 4 5 6 7 8 Today: the
More informationInformation System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000)
Information System Audit Engr. Abdul-Rahman Mahmood MS, PMP, MCP, QMR(ISO9001:2000) armahmood786@yahoo.com alphasecure@gmail.com alphapeeler.sf.net/pubkeys/pkey.htm http://alphapeeler.sourceforge.net pk.linkedin.com/in/armahmood
More informationApplications & Application-Layer Protocols: The Web & HTTP
CS 312 Internet Concepts Applications & Application-Layer Protocols: The Web & HTTP Dr. Michele Weigle Department of Computer Science Old Dominion University mweigle@cs.odu.edu http://www.cs.odu.edu/~mweigle/cs312-f11/
More informationHTTP Review. Carey Williamson Department of Computer Science University of Calgary
HTTP Review Carey Williamson Department of Computer Science University of Calgary Credit: Most of this content was provided by Erich Nahum (IBM Research) Introduction to HTTP http request http request
More information2/13/2014. A protocol is an agreed-upon convention that defines how communication occurs between two (or more?) endpoints
Rensselaer Polytechnic Institute CSCI-4220 Network Programming David Goldschmidt, Ph.D. A protocol is an agreed-upon convention that defines how communication occurs between two (or more?) endpoints All
More informationWEB SECURITY p.1
WEB SECURITY 101 - p.1 spritzers - CTF team spritz.math.unipd.it/spritzers.html Disclaimer All information presented here has the only purpose to teach how vulnerabilities work. Use them to win CTFs and
More informationWeb Search An Application of Information Retrieval Theory
Web Search An Application of Information Retrieval Theory Term Project Summer 2009 Introduction The goal of the project is to produce a limited scale, but functional search engine. The search engine should
More informationDATA COMMUNICATOIN NETWORKING
DATA COMMUNICATOIN NETWORKING Instructor: Ouldooz Baghban Karimi Course Book: Computer Networking, A Top-Down Approach By: Kurose, Ross Introduction Course Overview Basics of Computer Networks Internet
More informationC22: Browser & Web Server Communication
CISC 3120 C22: Browser & Web Server Communication Hui Chen Department of Computer & Information Science CUNY Brooklyn College 11/01/2017 CUNY Brooklyn College 1 Web Application Architecture Client apps
More informationWeb Architecture and Technologies
Web Architecture and Technologies Ambient intelligence Fulvio Corno Politecnico di Torino, 2015/2016 Goal Understanding Web technologies Adopted for User Interfaces Adopted for Distributed Application
More informationJeff Offutt SWE 642 Software Engineering for the World Wide Web
Networking Basics Behind the World Wide Web Jeff Offutt http://www.cs.gmu.edu/~offutt/ SWE 642 Software Engineering for the World Wide Web Adapted from chapter 1 slides for : Web Technologies : A Computer
More informationSMTP. George Porter CSE 124 February 12, 2015
SMTP George Porter CSE 124 February 12, 2015 Homework 2 out Announcements Project 2 checkpoint due Tuesday Traditional Applications Two of the most popular The World Wide Web and Email. Broadly speaking,
More informationGuzzle: Extraordinary HTTP Client
Guzzle: Extraordinary HTTP Client Rob Allen @akrabat ~ akrabat.com ~ September 2016 Why HTTP clients in PHP? Talking to web services Authentication with 3rd parties Social media interaction Remote APIs
More informationLecture 7 Application Layer. Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it
Lecture 7 Application Layer Antonio Cianfrani DIET Department Networking Group netlab.uniroma1.it Application-layer protocols Application: communicating, distributed processes running in network hosts
More informationCS 355. Computer Networking. Wei Lu, Ph.D., P.Eng.
CS 355 Computer Networking Wei Lu, Ph.D., P.Eng. Chapter 2: Application Layer Overview: Principles of network applications? Introduction to Wireshark Web and HTTP FTP Electronic Mail SMTP, POP3, IMAP DNS
More informationWeb Based Solutions. Gerry Seidman. IAM Consulting
Web Based Solutions Gerry Seidman Internet Access Methods seidman@iamx.com http://www.iam-there.com 212-580-2700 IAM Consulting seidman@iamx.com http://www.iamx.com 212-580-2700 (c) IAM Consulting Corp.
More informationCSCI-1680 WWW Rodrigo Fonseca
CSCI-1680 WWW Rodrigo Fonseca Based partly on lecture notes by Sco2 Shenker and John Janno6 Administrivia HW3 out today Will cover HTTP, DNS, TCP TCP Milestone II coming up on Monday Make sure you sign
More informationIntroduction to HTTP. Jonathan Sillito
Introduction to HTTP Jonathan Sillito If you interested in working with a professor next Summer 2011 apply for an NSERC Undergraduate Student Award. Students must have a GPA of 3.0 or higher to be eligible.
More informationCS 43: Computer Networks. Layering & HTTP September 7, 2018
CS 43: Computer Networks Layering & HTTP September 7, 2018 Last Class: Five-layer Internet Model Application: the application (e.g., the Web, Email) Transport: end-to-end connections, reliability Network:
More information1.1 A Brief Intro to the Internet
1.1 A Brief Intro to the Internet - Origins - ARPAnet - late 1960s and early 1970s - Network reliability - For ARPA-funded research organizations - BITnet, CSnet - late 1970s & early 1980s - email and
More informationChapter 2 Application Layer
Chapter 2 Application Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Application Layer 2-1 Some network apps e-mail web text messaging remote
More informationGenerating the Server Response: HTTP Response Headers
Generating the Server Response: HTTP Response Headers 1 Agenda Format of the HTTP response Setting response headers Understanding what response headers are good for Building Excel spread sheets Generating
More informationGuzzle: Extraordinary HTTP Client
Guzzle: Extraordinary HTTP Client Rob Allen @akrabat ~ akrabat.com ~ September 2016 Why HTTP clients in PHP? Talking to web services Authentication with 3rd parties Social media interaction Remote APIs
More informationIntroduction to Ethical Hacking
Introduction to Ethical Hacking Summer University 2017 Seoul, Republic of Korea Alexandre Karlov Today Some tools for web attacks Wireshark How a writeup looks like 0x04 Tools for Web attacks Overview
More informationWeb Programming. Based on Notes by D. Hollinger Also Java Network Programming and Distributed Computing, Chs.. 9,10 Also Online Java Tutorial, Sun.
Web Programming Based on Notes by D. Hollinger Also Java Network Programming and Distributed Computing, Chs.. 9,10 Also Online Java Tutorial, Sun. 1 World-Wide Wide Web (Tim Berners-Lee & Cailliau 92)
More informationSIP Session Initiation Protocol
Session Initiation Protocol ITS 441 - VoIP; 2009 P. Campbell, H.Kruse HTTP Hypertext Transfer Protocol For transfer of web pages encoded in html: Hypertext Markup Language Our interest: primarily as model
More informationNetwork Working Group Request for Comments: November 1996
Network Working Group Request for Comments: 2046 Obsoletes: 1521, 1522, 1590 Category: Standards Track N. Freed Innosoft N. Borenstein First Virtual November 1996 Status of this Memo Multipurpose Internet
More informationHyperText Transfer Protocol
Outline Introduce Socket Programming Domain Name Service (DNS) Standard Application-level Protocols email (SMTP) HTTP HyperText Transfer Protocol Defintitions A web page consists of a base HTML-file which
More informationChapter 2: outline. 2.6 P2P applications 2.7 socket programming with UDP and TCP
Chapter 2: outline 2.1 principles of network applications 2.2 Web and HTTP 2.3 FTP 2.4 electronic mail SMTP, POP3, IMAP 2.5 DNS 2.6 P2P applications 2.7 socket programming with UDP and TCP Application
More information