Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Um pouco da origem para chegar no WSGI
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Roger Camargo
November 16, 2022
Programming
56
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
39
Mapa de estudo dev frontend 2023
huogerac
1
97
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
350
Django ORM vs SQLAlchemy (queries)
huogerac
0
210
Django ORM vs SQLAlchemy (intro)
huogerac
0
110
Site Imobiliario Django
huogerac
0
120
Other Decks in Programming
See All in Programming
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
1
730
バグを直したら useEffect が消えた
colorful12
3
710
不幸な GC
chencmd
0
760
Jindong: Introducing Declarative Haptics in Compose Multiplatform
l2hyunwoo
0
130
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
500
私のClaude Code活用法 (個人開発編) - PHPerKaigi mini #4(2026/08/24)
panda_program
1
170
プロポーザルを書いてもらう
pvcresin
0
580
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
300
源内ハンズオン概要編
hideg
0
210
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
120
How I Won Prize Money at a Hackathon Using Codex and Symphony Alpha
yasei_no_otoko
0
120
MySQLとPostgreSQLって何が違うの?
akagami
0
140
Featured
See All Featured
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.8k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
300
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
490
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
180
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
490
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
180
4 Signs Your Business is Dying
shpigford
187
23k
A Tale of Four Properties
chriscoyier
163
24k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
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