Client-Server Communication (Udacity)

Offered by Udacity, Google,
Client-Server Communication (Udacity)

HTTP/1 to HTTP/2 and all things Security. We use websites all the time, but how does clicking a link in your browser or typing in a URL in the address bar get you to a website? How does the server know what information you're looking for or how to send you that information once it's figured that out? How can you protect your users from attackers? Dig into this course and you'll be able to answer these questions!

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

This course will guide you through how a client communicates with a server. You'll learn about HTTP's request and response cycle, dig into HTTP headers and verbs, distinguish HTTP/1 from HTTP/2 capabilities, all while experiencing the importance of security by digging into the details of HTTPS. Throughout the course, you'll learn both security best practices, as well as ways to improve the performance of your web apps. We'll provide you with handcrafted servers where you'll diagnose problematic server setups, issues with SSL certificates, and even have a chance to hack an example bank website to transfer funds.
Typically, web developers do not work directly with underlying platform of HTTP. But knowing how information is transferred across the wire is vital to creating efficient and professional apps. This course will dig into the ins and outs of application performance as well as cover common security pitfalls and how to prevent them.

What You Will Learn

Lesson 1
HTTP’s Request Response Cycle

  • Learn about HTTP's request and response cycle.
  • What makes up an HTTP requests and response?
  • What originates an HTTP request and how do they relate to one another?

Lesson 2
HTTP/1

  • Find out how HTTP/1 is used in practice.
  • Map the requests and response types from lesson 1 into HTTP verbs and response codes & headers.

Lesson 3
HTTPS

  • How does HTTPS differ from HTTP?
  • TLS, cryptography, and Certificate Authorities.
  • HTTP Mixed Content issues.

Lesson 4
HTTP/2

  • Learn how HTTP/2 improves on and extends HTTP/1.
  • Look at optimizations for HTTP/1 that are now anti-patterns in HTTP/2.

Lesson 5
Security

  • Look at and resolve common security problems like CORS, CSRF, XSS, and more!

Prerequisites and Requirements
We expect that you are comfortable reading and writing HTML, CSS and JavaScript. Knowledge of JavaScript's Fetch API is not required but will be beneficial. Check out our JavaScript Promises course to learn about Fetch.
Other Requirements:
comfort with command line tools

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Networking and Security in iOS Applications (Coursera) Coursera
University of California, Irvine

Networking and Security in iOS Applications (Coursera)

You will learn to extend your knowledge of making iOS apps so that they can securely interact with web services and receive push notifications. You'll learn how to store data securely on a device using Core Data. You’ll also learn to securely deploy apps to the App Store and beta users over-the-air. The format of the course is through a series of code tutorials. We will walk you through the creation of several apps that you can keep as a personal app toolbox. When you make your own apps after this course, you can bring in these capabilities as needed. When necessary we pop out of the code tutorials to talk about concepts at a higher level so that what you are programming makes sense.

Jun 22nd 2026
4 Weeks
Offline Web Applications (Udacity) Udacity
Udacity,Google

Offline Web Applications (Udacity)

Using IndexedDB & Service Worker. This course is focused squarely on user experience, and seeks to show developers how thinking offline-first is the best way to ensure that applications perform their best in all scenarios, not just ideal ones. You'll learn to recognize the differences between good, poor, intermittent, and missing connectivity for your users , and master how to make applications that navigate these conditions with ease.

Self Paced
Self-Paced
Enterprise and Infrastructure Security (Coursera) Coursera
New York University

Enterprise and Infrastructure Security (Coursera)

This course introduces a series of advanced and current topics in cyber security, many of which are especially relevant in modern enterprise and infrastructure settings. The basics of enterprise compliance frameworks are provided with introduction to NIST and PCI. Hybrid cloud architectures are shown to provide an opportunity to fix many of the security weaknesses in modern perimeter local area networks.

Jun 22nd 2026
4 Weeks
Building Web Applications in PHP (Coursera) Coursera
University of Michigan

Building Web Applications in PHP (Coursera)

In this course, you'll explore the basic structure of a web application, and how a web browser interacts with a web server. You'll be introduced to the request/response cycle, including GET/POST/Redirect. You'll also gain an introductory understanding of Hypertext Markup Language (HTML), as well as the basic syntax and data structures of the PHP language, variables, logic, iteration, arrays, error handling, and superglobal variables, among other elements.

Jun 22nd 2026
5-12 Weeks
Secure and Private AI (Udacity) Udacity
Udacity,Facebook

Secure and Private AI (Udacity)

Learn how to extend PyTorch with the tools necessary to train AI models that preserve user privacy. This free course will introduce you to three cutting-edge technologies for privacy-preserving AI: Federated Learning, Differential Privacy, and Encrypted Computation. You will learn how to use the newest privacy-preserving technologies, such as OpenMined's PySyft. PySyft extends Deep Learning tools—such as PyTorch—with the cryptographic and distributed technologies necessary to safely and securely train AI models on distributed private data.

Self Paced
Self-Paced
Software Design Threats and Mitigations (Coursera) Coursera
University of Colorado System

Software Design Threats and Mitigations (Coursera)

The design step in developing software has some unique characteristics. First of all, it’s the only step where drawing pictures of things is the norm. Why is that? What do pictures do that other representations cannot do? Pictures have varying levels of detail; pictures have context. Pictures…paint a picture. Why are these things important? In this course, too, we begin looking at other disciplines (building architecture is a favorite one) for lessons on design.

Jun 22nd 2026
5-12 Weeks
Real-Time Cyber Threat Detection and Mitigation (Coursera) Coursera
New York University

Real-Time Cyber Threat Detection and Mitigation (Coursera)

This course introduces real-time cyber security techniques and methods in the context of the TCP/IP protocol suites. Explanation of some basic TCP/IP security hacks is used to introduce the need for network security solutions such as stateless and stateful firewalls. Learners will be introduced to the techniques used to design and configure firewall solutions such as packet filters and proxies to protect enterprise assets.

Jun 22nd 2026
4 Weeks