State Management Cookies, Sessions SoftUni Team State Management

Slides:



Advertisements
Similar presentations
AngularJS Routing Routes, Route Parameters, Templates, Location, Navigation SoftUni Team Technical Trainers Software University
Advertisements

AngularJS Services Built-in and Custom Services SoftUni Team Technical Trainers Software University
Asynchronous Web Services Writing Asynchronous Web Services SoftUni Team Technical Trainers Software University
Sessions and Cookies State Management, Cookies, Sessions, Hidden Fields SoftUni Team Technical Trainers Software University
Forms Overview, Query string, Submitting arrays, PHP & HTML, Input types, Redirecting the user Mario Peshev Technical Trainer Software.
Sets, Dictionaries SoftUni Team Technical Trainers Software University
Doctrine The PHP ORM SoftUni Team Technical Trainers Software University
Web Storage and Cookies Cookies, Local and Session Storage SoftUni Team Technical Trainers Software University
First Steps in PHP Creating Very Simple PHP Scripts SoftUni Team Technical Trainers Software University
Version Control Systems
Helpers, Data Validation
Auto Mapping Objects SoftUni Team Database Applications
Databases basics Course Introduction SoftUni Team Databases basics
Sockets, Routing, Sessions, Handlers
Interface Segregation / Dependency Inversion
Services & Dependency Injection
C# MVC Frameworks – ASP.NET
Web API - Introduction AJAX, Spring Data REST SoftUni Team Web API
Introduction to MVC SoftUni Team Introduction to MVC
Cookies, Sessions, Bootstrap
Deploying Web Application
Setup a PHP + MySQL Development Environment
WordPress Introduction
PHP MVC Frameworks Course Introduction SoftUni Team Technical Trainers
PHP Fundamentals Course Introduction SoftUni Team Technical Trainers
Application Architecture, Redux
ASP.NET Integration Testing
ASP.NET Unit Testing Unit Testing Web API SoftUni Team ASP.NET
Mocking tools for easier unit testing
PHP MVC Frameworks MVC Fundamentals SoftUni Team Technical Trainers
OOP Course - Virtual Trip
Spring Filters Spring Interceptors SoftUni Team Spring Interceptors
EF Relations Object Composition
Entity Framework: Code First
Registration, Login, Thymeleaf
Data Definition and Data Types
Databases advanced Course Introduction SoftUni Team Databases advanced
C#/Java Web Development Basics
MVC Architecture. Routing
Install and configure theme
Entity Framework: Relations
Caching Data in ASP.NET MVC
Fast String Manipulation
The Right Way Control Flow
ASP.NET Razor Engine SoftUni Team ASP.NET MVC Introduction
MVC Architecture, Symfony Framework for PHP Web Apps
C# Advanced Course Introduction SoftUni Team C# Technical Trainers
Databases Advanced Course Introduction SoftUni Team Databases Advanced
C# Web Development Basics
Best practices and architecture
WordPress Plugins Popular WP Plugins: Sliders, Forms, Contacts, SEO, Forum, Photo Gallery, e-Commerce WordPress Plugins SoftUni Team Technical Trainers.
Multidimensional Arrays, Sets, Dictionaries
Extending functionality using Collections
ASP.NET REST Services SoftUni Team ASP.NET REST Services
Exporting and Importing Data
ASP.NET Filters SoftUni Team ASP.NET MVC Introduction
Making big SPA applications
Manual Mapping and AutoMapper Library
C# Advanced Course Introduction SoftUni Team C# Technical Trainers
Course Overview, Trainers, Evaluation
Exporting and Importing Data
Scheduled Tasks and Web Socket
Introduction to TypeScript & Angular
CSS Transitions and Animations
Train the Trainers Course
Version Control Systems
JavaScript Frameworks & AngularJS
JavaScript: ExpressJS Overview
CSS Transitions and Animations
Iterators and Generators
Presentation transcript:

State Management Cookies, Sessions SoftUni Team State Management Technical Trainers Software University http://softuni.bg

Table of Contents Cookies Sessions

Have a Question? sli.do #CSharpWeb

Cookies

HTTP is Stateless it doesn’t store information about the requests Web Client Web Application GET POST GET Not stored

What are Cookies? A small file that web applications embeds on the user's computer http://www.oracle.com/ Web Client Web Application GET www.example.bg HTTP/1.1 HTTP/1.1 200 OK Set-Cookie: lang=en GET www.example.bg HTTP/1.1 Cookie: lang=en

Cookie Example Name Value Host Is secured? HTTP only Created on Expires on

Preferences (Remember sign in) Cookie Purpose Cookie Language settings Preferences (Remember sign in) Store Session

Examine your Cookies Most cookies are stored in a RDBMS, usually SQLite Download SQLite browser from here In Mozilla cookies are located here: Open the file with the sqlite browser C:\Users\{username}\AppData\Roaming\Mozilla\Firefox\Profiles\2awcekaj.default\cookies.sqlite

Examine your Cookies (2) Name Host Created on Value Last accessed on

Third Party Cookies Cookies stored by an external party http://stackoverflow.com/ Web Application Web Client Cookie transfer Cookie transfer Third Party

Example of a Cookie class Custom-made Cookie HTTP Variable Environment.GetEnvironmentVariable("HTTP_COOKIE"); Example of a Cookie class public class Cookie { public Cookie(string name, string value) {this.Name = name; this.Value = value;} public string Name { get; private set; } public string Value { get; private set; } public override string ToString() => $"{this.Name}={this.Value}"; }

Sessions

What are Sessions? A session is a way to store information to be used across multiple pages /login Web Application Session /home user: Teo /products

Relation with Cookies Session Store Cookie { name: sid value: 5 sid 5 { uid: 101 } sid 7 { uid: 102 } Cookie { name: sid value: 5 } Validate Req Web Application Session Resp Database Cookie { name: sid value: 7 } Req Get data uid name 101 Teo 102 Bojo Resp Create personal web page

Custom-made Session Unique id Key-value pairs Session.cs public class Session { private long id; private Dicitionary<string, string> pairs; Unique id Key-value pairs

Summary Cookies are client based stored information They are created by web applications Browser sends them back to the application Sessions are server based information that is used across multiple pages

Web Development Basics – Course Overview https://softuni.bg/courses/ © Software University Foundation – http://softuni.org This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike license.

License This course (slides, examples, demos, videos, homework, etc.) is licensed under the "Creative Commons Attribution- NonCommercial-ShareAlike 4.0 International" license © Software University Foundation – http://softuni.org This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike license.

Free Trainings @ Software University Software University Foundation – softuni.org Software University – High-Quality Education, Profession and Job for Software Developers softuni.bg Software University @ Facebook facebook.com/SoftwareUniversity Software University @ YouTube youtube.com/SoftwareUniversity Software University Forums – forum.softuni.bg © Software University Foundation – http://softuni.org This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike license.