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
160
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JSConfAr 2012
Viernes 13: JSON APIs y node.js
Dan Zajdband
May 20, 2012
More Decks by Dan Zajdband
See All by Dan Zajdband
WebVR for the rest of us @ SRCCON 2016
danzajdband
0
140
Crowdsourcing
danzajdband
0
180
Progressive Web Applications
danzajdband
0
210
Hackdash - Media party 2015
danzajdband
0
67
Servidores... Para qué?
danzajdband
0
310
¿Qué ES 6? - Introducción a ECMAScript y Babel
danzajdband
2
430
La Web Realtime
danzajdband
1
150
Introducción a express - meetup node.js argentina
danzajdband
1
730
Other Decks in Technology
See All in Technology
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
140
やさしいA2A入門
minorun365
PRO
12
1.8k
非エンジニアがClaudeと挑んだ「1ヶ月間プロダクト30本ノック」
askokc
0
450
200個のGitHubリポジトリを横断調査したかった
icck
0
120
作って終わりにしない タイミーのセマンティックレイヤー育成の現在地
chanyou0311
4
2.3k
あなたの知らないPDFのアクセシビリティ
lycorptech_jp
PRO
0
170
フロンティアAIのゲート化と地政学リスク
nagatsu
0
130
就職⽀援サービスにおけるキャリアアドバイザーのシフトスケジューリング
recruitengineers
PRO
1
140
チームで進めるAI駆動アジャイル×ウォーターフォール
kumaiu
0
160
【NRUG vol.18】KubernetesにおけるNew Relicデータ取得量削減の考え方
nrug_member
0
110
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
250
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
640
Featured
See All Featured
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
The Cost Of JavaScript in 2023
addyosmani
55
10k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
170
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
710
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
410
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
610
The SEO Collaboration Effect
kristinabergwall1
1
480
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
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