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
JSConfAr 2012
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Dan Zajdband
May 20, 2012
Technology
1
150
JSConfAr 2012
Viernes 13: JSON APIs y node.js
Dan Zajdband
May 20, 2012
Tweet
Share
More Decks by Dan Zajdband
See All by Dan Zajdband
WebVR for the rest of us @ SRCCON 2016
danzajdband
0
120
Crowdsourcing
danzajdband
0
170
Progressive Web Applications
danzajdband
0
190
Hackdash - Media party 2015
danzajdband
0
64
Servidores... Para qué?
danzajdband
0
290
¿Qué ES 6? - Introducción a ECMAScript y Babel
danzajdband
2
410
La Web Realtime
danzajdband
1
140
Introducción a express - meetup node.js argentina
danzajdband
1
720
Other Decks in Technology
See All in Technology
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
ABEMAのバグバウンティの取り組み
kurochan
1
390
スピンアウト講座01_GitHub管理
overflowinc
0
1.1k
Kiroで見直す開発プロセスとAI-DLC
k_adachi_01
0
120
「お金で解決」が全てではない!大規模WebアプリのCI高速化 #phperkaigi
stefafafan
5
2.2k
Phase10_組織浸透_データ活用
overflowinc
0
1.3k
Phase08_クイックウィン実装
overflowinc
0
1.4k
詳解 強化学習 / In-depth Guide to Reinforcement Learning
prinlab
0
360
欠陥分析(ODC分析)における生成AIの活用プロセスと実践事例 / 20260320 Suguru Ishii & Naoki Yamakoshi & Mayu Yoshizawa
shift_evolve
PRO
0
330
_Architecture_Modernization_から学ぶ現状理解から設計への道のり.pdf
satohjohn
2
700
スピンアウト講座02_ファイル管理
overflowinc
0
1.1k
君はジョシュアツリーを知っているか?名前をつけて事象を正しく認識しよう / Do you know Joshua Tree?
ykanoh
2
110
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
160
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.2k
How to make the Groovebox
asonas
2
2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
How to Ace a Technical Interview
jacobian
281
24k
Ethics towards AI in product and experience design
skipperchong
2
230
The Curse of the Amulet
leimatthew05
1
10k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
93
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
92
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
160
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
Transcript
VIERNES 13 JSON APIs y NodeJS Dan Zajdband @dzajdband lunes
21 de mayo de 12
JSON lunes 21 de mayo de 12
lunes 21 de mayo de 12
Douglas Crockford lunes 21 de mayo de 12
Douglas Crockford • JSON • JSLint • JSMin • YUI
• Javascript: The Good Parts lunes 21 de mayo de 12
JSON • Formato de intercambio de datos • Sintaxis estilo
C • Fácil de entender y procesar para • Personas • Maquinas lunes 21 de mayo de 12
JSON lunes 21 de mayo de 12
Archirrival a.k.a. XML lunes 21 de mayo de 12
JSON Estructuras de datos • Objeto • Arreglo lunes 21
de mayo de 12
JavaScript Estructuras de datos • Objeto • Arreglo lunes 21
de mayo de 12
JSON Otras Estructuras de datos • Número • String lunes
21 de mayo de 12
JavaScript Otras Estructuras de datos • Número • String lunes
21 de mayo de 12
JSON = JavaScript Object Notation lunes 21 de mayo de
12
NodeJS lunes 21 de mayo de 12
NodeJS • JavaScript en el servidor • V8 • non-blocking
I/O • Especialmente bueno para networking • Excelente sistema de módulos • Implementación JSON nativa lunes 21 de mayo de 12
NodeJS JSON lunes 21 de mayo de 12
NodeJS Módulo HTTP lunes 21 de mayo de 12
módulos útiles NodeJS ExpressJS • Framework (El Sintatra de NodeJS)
• Routing • Middleware (Connect) • Soporta 14 sistemas de template lunes 21 de mayo de 12
módulos útiles NodeJS Superagent • Ajax with less suck (and
node.js HTTP client with less suck) lunes 21 de mayo de 12
módulos útiles NodeJS Otros • Node Oauth (npm install oauth)
• Socket.io (npm install socket.io) • Redis (npm install redis) • up (npm install up) • mocha (npm install mocha) lunes 21 de mayo de 12
Implementando una API lunes 21 de mayo de 12
Ojo al piojo lunes 21 de mayo de 12
lunes 21 de mayo de 12
Implementando una API Ojo al piojo • Autenticación • Generar
tokens • Hashes • Redis • OAuth • node-oauth lunes 21 de mayo de 12
Implementando una API Ojo al piojo • Limitación de recursos
• Documentar reglas de limitación • Mensajes de error expresivos lunes 21 de mayo de 12
Manejando requests lunes 21 de mayo de 12
Manejando requests Middleware • Express está basado (y usa) Connect
• Ambos proyectos creados y mantenidos por @tjholowaychuk lunes 21 de mayo de 12
Buscando las manos de peron lunes 21 de mayo de
12
lunes 21 de mayo de 12
Manejando requests Middleware lunes 21 de mayo de 12
Restringiendo recursos lunes 21 de mayo de 12
Manejando requests Middleware lunes 21 de mayo de 12
Manejando requests Middleware lunes 21 de mayo de 12
Streams lunes 21 de mayo de 12
Manejando requests Middleware lunes 21 de mayo de 12
Consumiendo APIs lunes 21 de mayo de 12
lunes 21 de mayo de 12
Manejo de requests lunes 21 de mayo de 12
Consumiendo APIs Manejo de requests • Módulo HTTP de NodejS
• Request (npm install request) • Superagent (npm install superagent) lunes 21 de mayo de 12
Consumiendo APIs Superagent • Ajax with less suck (and node.js
HTTP client with less suck) lunes 21 de mayo de 12
Consumiendo APIs Superagent • Streams lunes 21 de mayo de
12
OAuth lunes 21 de mayo de 12
Consumiendo APIs Node OAuth • Implementación de OAuth en NodeJS
• Autenticación • Manejo de requests http, https • Manejo de streams lunes 21 de mayo de 12
Manejo de errores lunes 21 de mayo de 12
lunes 21 de mayo de 12
Endpoints lunes 21 de mayo de 12
Twitter REST API ~= 100 endpoints lunes 21 de mayo
de 12
Consumiendo APIs Endpoints • Mi estrategia • Archivos de configuración
(JSON) con endpoints • Aumentar el prototipo del objeto que exporta la librería lunes 21 de mayo de 12
Una cosita más... (En realidad son 2) lunes 21 de
mayo de 12
This is Socket.IO guy... Do you still trust him? lunes
21 de mayo de 12
Preguntas? lunes 21 de mayo de 12
Gracias! lunes 21 de mayo de 12