Course info

Rating

(2359)

Level

Beginner

Updated

Feb 17, 2012

Duration

2h 50m

Description

HTTP is the protocol of the web, and this course will look at HTTP from a web developer's perspective. We'll cover resources, messages, cookies, and authentication protocols. We'll look at how HTTP clients can use persistent and parallel connections to improve performance, and see how the web scales to meet demand using cache headers and proxy servers. By the end of the course you will have the knowledge to build better web applications and web services.

About the author

Scott has over 15 years of experience in commercial software
development and is a frequent speaker at national conferences,
and local user groups. Scott is a Microsoft MVP and has authored
books on several Microsoft technologies, including ASP.NET, C#,
and Windows Workflow.

Section Introduction Transcripts

HTTP ResourcesScott Allen: Hi, this is Scott Allen and this module is the first module in a series describing the Hypertext Transfer Protocol or what we call HTTP. HTTP is the protocol that lets me search for microwave ovens and buy one from Amazon. com. It's also the protocol that lets me reunite with old friends on a Facebook chat or when there's nothing good on TV I can go to YouTube and watch videos of cats doing funny things. All of these things happen on the web where HTTP defines what is possible. It's a protocol that allows a web server from a data center in the United States to ship information to an Internet cafe in Australia where a student can read a web page describing the Ming Dynasty in China. In this course, we'll look at HTTP from a software developer's perspective. Having a solid understanding of HTTP can help you write better web applications and web services. It can also help you debug applications and services when things go wrong. We'll be covering all of the basics including resources, messages, connections and security as it relates to HTTP. This module is going to focus on resources.

HTTP MessagesHi, this is Scott Allen, and in this module we're going to look inside the messages exchanged in an HTTP transaction. We're going to learn about methods, message types, HTTP headers, and status codes. Understanding these concepts is important for developers who work on the Web. Not only will you be able to build better applications by responding with the right types of messages, but you're also going to be able to spot problems and debug issues, when Web applications aren't working.

HTTP ConnectionsIn the previous module, we looked at HTTP messages, and we saw examples of the textual command that flowed between the client and server in an HTTP transaction. But, how do those messages actually move through the network? When are the network connections opened? When are the network connections closed? Those are the types of questions that we'll be answering in this module, as we look at HTTP from a lower level perspective. We're going to look at network protocols like the transmission control protocol and use a tool to analyze the network during an HTTP transaction. We're also going to get a feel for what it might be like to write the code in a web browser that makes an HTTP request.

HTTP ArchitectureHi, this is Scott Allen, and this module is about HTTP and Web architecture. In the first module of this course, we talked about resources, but I mostly focused on URLs and how to interpret a URL. But resources are really the centerpiece of HTTP. And now that we understand HTTP messages, methods, and connections, we can return to look at resources in a new light. In this module, I want to show you the essence of working with the resources and messages and how the architecture of the Web really works.

HTTP SecurityHi, this is Scott Allen and in this last module we're going to look at security related topics like using cookies to identify users and manage state, we'll look at some common Web authentication protocols and also the HTTPs protocol which is secure HTTP. I want to start by looking at cookies to see how they help us manage state in the stateless hypertext transfer protocol. ( pause )