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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
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
Seven New Principles of Software Engineering
yegor256
0
350
GraphQL の onError と Nullability のこれから
quramy
0
190
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
260
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
4
3.3k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
460
S3 TablesのIcebergデータに、AIエージェントからアクセスしてみた / 20261016developersio2026joetsu-accessing-iceberg-in-s3tables-via-agent
kasacchiful
PRO
0
220
No More NoSuchMethodError
exoego
1
120
HTML-in-Canvasで作る未来のWeb UI表現
clockmaker
5
5.9k
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
340
気持ちぃ〜角丸 Squircle
ryu1013
0
360
[2026-10-14](C)Re:ゼロから始める異世界生活〜始まりの終わりと終わりの始まり〜
tosite
0
160
Zero-Tap Sign-In対応、結局何をすればいいの?
mitohato14
0
1k
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
580
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Become a Pro
speakerdeck
PRO
31
6.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
18k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
740
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
360
Making the Leap to Tech Lead
cromwellryan
135
10k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
580
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
450
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
860
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
2
950
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
490
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