Your SlideShare is downloading. ×
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
ASP.NET WEB API 開発体験
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

ASP.NET WEB API 開発体験

41,728

Published on

2013/1/26 Hokuriku.NET vol11 LT の資料です

2013/1/26 Hokuriku.NET vol11 LT の資料です

0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
41,728
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
33
Comments
0
Likes
8
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ASP.NET WEB API 開発体験 @miso_soup3 2013/1/26 Hokuriku.NET vol.11 LT
  • 2. ゴールASP.NET WEB API ってこんな感じなんだ対象者ASP.NET WEB API をご存じない方ASP.NET MVC を触ったことがある方
  • 3. 目次1.WEB API を作ろう2.ASP.NET MVC と似ている…が!3.アクションメソッドの実装4.公開へ!
  • 4. 1.WEB API を作ろう太郎さんの上司よりマルチデバイス対応の WEB サービスを作成することになりました。太郎さんは、WEB API を作成してください。
  • 5. 1.WEB API を作ろう Html + 太郎さん↓ JavaScipt Win RT WEB API iOS
  • 6. 1.WEB API を作ろうWEB API って何だろう?例: Twitter API https://dev.twitter.com/docs/api/1.1GET statuses/mentions_timlineGET statuses/user_timelineGET search/tweetsPOST direct_messages/new → HTTP 通信を使って、 アプリケーション機能を提供する仕組み
  • 7. 1.WEB API を作ろう「WCF ?」2012 / 8 にリリースされた ASP.NET MVC 4 ASP.NET WEB API → ASP.NET WEB API を使って、 WEB API を実装することに。
  • 8. 2.ASP.NET MVC と似ている…が!太郎さんの友達よりASP.NET WEB API って、ASP.NET MVC と似ているらしいよ
  • 9. 2.ASP.NET MVC と似ている…が!認証が必要なことを表す属性を付けてみました。
  • 10. 2.ASP.NET MVC と似ている…が!動かなかった!
  • 11. 2.ASP.NET MVC と似ている…が!別のライブラリでした。ASP.NET MVC ではASP.NET WEB API では
  • 12. 2.ASP.NET MVC と似ている…が! ASP.NET MVC ASP.NET WEB APISystem.Web.Mvc.dll System.Web.Http.dllの中に、 の中に、・Authorize 属性 ・Authorize 属性・Controller ・ApiController・ActionFilterAttribute ・ActionFilterAttributeなどなど・・・ などなど・・・ 同じような構造だけど、違う!
  • 13. 2.ASP.NET MVC と似ている…が!ASP.NET WEB API はもともと WCF の一部として開発。ASP.NET MVC のインフラストラクチャに似せながら作られた。(ASP.NET MVC の、 “IoC“ “設定は規約より勝る“ “シンプル”なところが本当に素晴らしかったんです。)
  • 14. 3.アクションメソッドの実装モデルを作りました。 ← アノテーションに よるモデル検証
  • 15. 3.アクションメソッドの実装Person を作成する API を実装しました。 引数を、URL や Body から作 成するモデルバインダ 検証情報が格納さ れた ModelState メソッド名の規約による、 実行メソッドの選択。
  • 16. 3.アクションメソッドの実装・フィルター属性・モデルバインダ・モデル検証・アクションメソッドの選択・ルーティングなどなど→ ASP.NET MVC と似ているところがたくさん!
  • 17. 4.公開へ!JavaScript 側を実装している花子さんAPI 使ってみたいから、公開しておいて!あ、あとどんな風に使えばいいか、ドキュメントもちょうだいね!
  • 18. 4.公開へ!Azure WEB Site を使って公開しました。
  • 19. 4.公開へ!ソリューションエクスプローラから、「発行」
  • 20. 4.公開へ!たった数分で公開完了。
  • 21. 4.公開へ!次はドキュメント!Nuget に、自動でヘルプページを作成してくれるパッケージがあるらしい。 ※プレビュー版(2013/01/26)
  • 22. 4.公開へ!パッケージをインストールすると、ASP.NET MVC で、ヘルプページが作成されます。
  • 23. 4.公開へ!ルーティングも反映。コメントも表示できます。
  • 24. 4.公開へ!API の詳細ヘルプページ。パラメータの説明も。
  • 25. 4.公開へ!どのようなレスポンスが返ってくるかなども表示。
  • 26. 4.公開へ!さらに! ※プレビュー版(2013/01/26)WebApiTestClient のパッケージを追加すると、先のヘルプページ上で、API を実行できます。
  • 27. 4.公開へ!「Test API」 をクリックすると・・・
  • 28. 4.公開へ!HTTP リクエストを編集し、実行することができます。
  • 29. 4.公開へ!結果も確認することができます。
  • 30. 4.公開へ!WEB API とヘルプページをAzure にて公開することができました。便利!
  • 31. 最後に太郎さんが体験したこと・WEB API を提供するフレームワーク・ASP.NET MVC の構造と似ている ・フィルター属性 ・モデルバインダ ・モデル検証 ・アクションメソッドの選択 ・・・・・けど、ASP.NET MVC とは別のもの。・Azure に発行・ヘルプページ作成、WEB API のデバッグ
  • 32. 他にも・・・・ASP.NET WEB API の Self-Host でテストhttp://d.hatena.ne.jp/taedium/20121218/p1 IIS なしで動く Self Host 機能を使って、テストをする方法です。・Http Client として使えるライブラリ(System.Net.Http) var client = new HttpClient(); var response = await client.GetAsync(“api/person”);http://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from-a-net-client・ASP.NET WEB API HTTP Message Lifecyclehttp://www.microsoft.com/en-us/download/details.aspx?id=36476 ASP.NET WEB API のパイプラインが1枚のポスターに。
  • 33. ありがとうございました!

×