Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Um pouco da origem para chegar no WSGI
Search
Roger Camargo
November 16, 2022
Programming
64
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Um pouco da origem para chegar no WSGI
Roger Camargo
November 16, 2022
More Decks by Roger Camargo
See All by Roger Camargo
AWS Lambda, Rodar local, com testes, IaC e Deploy via ansible
huogerac
1
48
Mapa de estudo dev frontend 2023
huogerac
1
100
Documentando API no Django com django-ninja
huogerac
1
140
"API Design First" pt-br
huogerac
0
290
Design First Web APIs - OpenAPI 3
huogerac
1
120
3 Arquiteturas Django
huogerac
1
360
Django ORM vs SQLAlchemy (queries)
huogerac
0
220
Django ORM vs SQLAlchemy (intro)
huogerac
0
110
Site Imobiliario Django
huogerac
0
130
Other Decks in Programming
See All in Programming
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
1.1k
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
4.8k
GraphQL の onError と Nullability のこれから
quramy
0
190
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
280
Lambda durable functionsでHuman in the Loopを楽に…楽に……
har1101
2
210
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
160
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
200
sbt 2.0: takeoff
eed3si9n
0
170
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
230
Coding with AI: How to trust the storyteller (AWS Community Day Adria, Ljubljana 2026)
slobodan
0
120
Vue.jsで作る空間解析アプリとCapacitorプラグインのData Bridge
hal_spidernight
1
120
ChromeでローカルLLM
ryu1013
0
170
Featured
See All Featured
Bash Introduction
62gerente
615
220k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
2
950
The Cost Of JavaScript in 2023
addyosmani
55
10k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
440
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Paper Plane (Part 1)
katiecoart
PRO
2
12k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Transcript
Web Forms
/index.html CLIENT SERVER REQUEST 1989
/index.html CLIENT SERVER REQUEST <html> <h1>Hello!</h1> </html>
CLIENT SERVER RESPONSE Hello!
GET /mypage.html HTTP/1.0 User-Agent: NCSA_Mosaic/2.0 (Windows 3.1) 200 OK Date:
Tue, 15 Nov 1994 08:12:31 GMT Server: CERN/3.0 libwww/2.17 Content-Type: text/html <HTML> A page with an image <IMG SRC="/myimage.gif"> </HTML> https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP Exemplo request/response
Web estática por design
CLIENT SERVER 1991
CLIENT SERVER <form action=”/cgi/form.py” method=”post”> <input name=”full_name”> <input name=”email”> <input
name=”message”> <input type=”submit” value=”Submit”> </form> REQUEST HTTP SERVER RUN SCRIPT + Print output ENV VARs read (STDIN, $query_string, $ENV{'CONTENT_LENGTH'}); Perl Bash Python
CLIENT SERVER REQUEST HTTP SERVER RUN SCRIPT + Print output
HTTP SERVER RESPONSE print(“Contato Enviado!”) Contato Enviado!
- Muitos http servers - Muitas formas de nomear variáveis
para rodar scripts - Scripts não eram portáveis entre diferentes http web servers - Desenvolvedores queriam um padrão para nomear as variáveis e deixar scripts portáveis e padronizados Problemas no início dos forms:
The Dark Side of the Moon CGI Common Gateway Interface
(specification) 1993 início 1997 mais popular https://en.wikipedia.org/wiki/Common_Gateway_Interface https://www.jmarshall.com/easy/cgi/portuguese/
https://help.hcltechsw.com/dom_designer/9.0.1/appdev/H_TABLE_OF_CGI_VARIABLES_3561.html
https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Evolution_of_HTTP Mas e o WSGI? Browser Web Server Python Web
App HTTP WSGI
Com diversos Python Web frameworks… Precisava padronizar a forma que
os scripts eram chamados e não só as variáveis de ambientes…
Python Web Server Gateway Interface Or WSGI == “wizgy” https://www.python.org/dev/peps/pep-0333/
2003 https://ruslanspivak.com/lsbaws-part2/
Roger Camargo https://huogerac.hashnode.dev