Now, if someone tries to monopolize the Web, for example pushes proprietary variations on network protocols, then that would make me unhappy. — T. Berners-Lee, Interview for Internet World, 1994
  1. HyperText Transfer Protocol (HTTP)

    1. HTTP — Focus on the introductory paragraph and the “Overview of HTTP” section.

      1. What does it mean to say that HTTP is stateless?
      2. Be able to describe the following terms: request; response; proxy; and client-server architecture.
      3. What are the most common HTTP request methods and what do they do?
      4. What are the categories of response codes and what sorts of responses does each category address?

      Note that we will focus on HTTP, not the TCP/IP framework on which it’s built.

    2. A basic HTTP session

      1. What is the standard port for HTTP communication?
      2. What can the server typically find out about the client in the request header? Similarly, what can the client typically find out about the server in the response header?
    3. HTTP Cookies

      1. What are cookies and what is their purpose?
      2. What are the following: XSS; CSRF?
    4. HTTP access control (CORS) — Just read the introduction here.

      1. What is a cross-origin HTTP request?
      2. Are they useful? Are they safe?
  2. HTML forms guide — Focus on the introductory section here, not the tutorial.

    1. What is the purpose of HTML forms?
    2. With which HTTP request method are forms most commonly associated?
    3. Can forms be used to implement SPAs?

    We’ll implement the form specified by this tutorial in the lab exercises.