Json rpc 2_0

5,588 views

Published on

Json rpc 2_0

  1. 1. JSON-RPC 2.0 aodag
  2. 2. おまえだれよ?
  3. 3. Ian の同僚ビープラウド勤務
  4. 4. (´  ・ ω ・  `)シュークリームなやつです
  5. 5. twitter上では癒し系やってます
  6. 6. Pythonistaに幸あれ ヽ(≧▽≦)ノ @aodag
  7. 7. 今日はJSON-RPCの話します
  8. 8. RestfulGET, POST, PUT, DELETEDBのCRUDに一致URLがリソース良いURL設計が必須すべての設計を、リソースに対するCRUD操作
  9. 9. Restfulすべての設計を、リソースに対するCRUD操作に落とし込む多分できるんだろうけど....
  10. 10. (´  > ω < )めんどくさいねん!
  11. 11. RPC (Remote Procedure Call) 全部POST URLは1つ 呼び出す処理は、POSTデータで指 定
  12. 12. RPCなもの XML-RPC Python標準ライブラリに入ってる JSON-PRC JSONパーサーは標準ライブラリに 入ってる AMF PyAMFとかあるみたい Message Pack RPC 実装があるって小耳に挟みました
  13. 13. なぜRPCを使おうと思うか 設計が楽 変更も楽 テストも楽
  14. 14. 設計が楽URLやHTTP Methodについて 考えなくていい
  15. 15. 実装が楽 実装するのは関数だけ
  16. 16. テストも楽 普通の関数だからね!
  17. 17. def hoge(arg1, arg2): return dict(result=arg1+arg2)
  18. 18. JSON-RPCJSON-RPCのリクエスト{ method:"hoge", params:["spam", "egg"], id: "hoge-1"}
  19. 19. JSON-RPC2JSON-RPC2のリクエスト{ version: "json-rpc2", method:"hoge", params:["spam", "egg"], id: "hoge-1"}
  20. 20. JSONRPC2のキーワード引数JSON-RPC2のリクエスト{ version: "json-rpc2", method:"hoge", params:{arg1: "spam", arg2: "egg"}, id: "hoge-1"}
  21. 21. JSON-RPC2のバッチリクエスト[ { version: "json-rpc2", method:"hoge", params:["spam", "egg"], id: "hoge-1" }, { version: "json-rpc2", method:"fuga", params:["spam", "spam"], id: "fuga-1" },]
  22. 22. jsonrpc2 パッケージhttp://pypi.python.org/pypi/jsonrpc2JSON-RPC2で、WSGIアプリケーション作るためのもの今 0.3 JSON-RPC2の機能はサポートしたはず次にやろうとしてることJS側の呼び出しインターフェイスを自動生成
  23. 23. ご清聴ありがとうございまし た ヽ(≧▽≦)ノ

×