WebAPI
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-戻る
--[[通信技術]] > [[HTTP]]
--[[その他、開発の色々]]
* 目次 [#k59df800]
#contents
*概要 [#ab7a22c7]
WebAPIに関する情報リンクを纏めています。
*詳細 [#l985a69b]
**インターフェイス [#n18dbd88]
***[[SOAP]] [#jc1a804d]
-[[XML>#d17c877b]]であり、古い。
-新規採用は、ほぼ、無い。
***[[REST]] [#f3bf594e]
-HTTPメソッドのリクエストと、
-[[JSON>#uaf487cb]]、[[XML>#d17c877b]]のレスポンス
***[[Swagger (OpenAPI)]] [#s6662154]
-[[REST>#f3bf594e]]の[[JSON>#uaf487cb]]系を発展させた。
-パラメータ付きの URL テンプレート+HTTP へのカスタム マ...
***[[gRPC]] [#t94d6bdd]
-バイナリ電文([[Protocol Buffers>#o9b67f9e]])
-IDLがあるらしい。
-互換ライブラリが揃っている。
***[[GraphQL]] [#y24afe94]
-データクエリとデータ操作をするリクエスト。
-上記の結果を返す、[[JSON>#uaf487cb]]のレスポンス
-実装は、Schemaクラスを定義し、Queryクラスに以下を実装す...
***[[OData]] [#d76a035d]
-[[XML>#d17c877b]]、[[XML-RPC>RPC#fdad3f1c]]版の[[GraphQL...
-[[Dynamics]]系で採用されている([[Graph API]])。
***何を選択するか? [#ea432ea2]
-好きなのを使えば良いと思いますが、~
以下(参考)を見て、自分は、
--「リクエストは、POST(form or json)
--レスポンスは、[[JSON>#uaf487cb]]で良くない?」
>派だと思いました(≒[[JSON-RPC>RPC#g8bee649]])。
--[[REST]]設計に悩むようであれば、拘らず、[[JSON-RPC>RPC#...
(「WWWブラウザから、URL直打ちのGETで[[JSON>#uaf487cb]]レ...
--何故か?と言うと、以下の辺りが根拠になっていると思いま...
---[[相互運用可能なBeanが生成される仕組み>JSONのparseを色...
---コレは、RFCなどで標準化はされていませんが、[[JSON>#uaf...
言語間で似通っているため、安定して出来る芸当になっている...
-参考
--API 設計: gRPC、OpenAPI、REST の概要と、それらを使用す...
https://cloud.google.com/blog/ja/products/api-management/...
--API 設計ガイダンス - Best practices for cloud applicati...
https://docs.microsoft.com/ja-jp/azure/architecture/best-...
**ペイロード [#n84896e1]
***[[XML]] [#d17c877b]
-リクエストにも[[XML]]を使うと、[[SOAP]]
-RESTでの[[XML>#f3bf594e]]の採用は減ってきている。
***[[JSON]] [#uaf487cb]
リクエストにも[[JSON]]を使うと、[[JSON-RPC>RPC#g8bee649]]
***[[MessagePack]] [#df0a9ae0]
***[[Protocol Buffers]] [#o9b67f9e]
***[[CBOR]] [#q54548e5]
**その他 [#y273e634]
***[[クロス ドメイン接続]] [#m3ca699c]
***[[WebAPIの認証]] [#x3413d74]
***[[API Gateway]] [#yd690707]
**ツール [#zbd74814]
***[[cURLコマンド]] [#ia62f4b3]
***[[Postman]] [#n0186e77]
*[[.NET開発]] [#z73f28e5]
**[[HttpClientの類の使い方]] [#wa3bf61e]
**[[ASP.NET]] [#k723a586]
***[[ASP.NET Web Service]] [#z7244f64]
***[[WCF]] (Windows Communication Foundation) [#w4b2a2bb]
***[[ASP.NET Web API]] [#d868dd17]
----
Tags: [[:プログラミング]], [[:通信技術]], [[:.NET開発]], ...
終了行:
「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicros...
-戻る
--[[通信技術]] > [[HTTP]]
--[[その他、開発の色々]]
* 目次 [#k59df800]
#contents
*概要 [#ab7a22c7]
WebAPIに関する情報リンクを纏めています。
*詳細 [#l985a69b]
**インターフェイス [#n18dbd88]
***[[SOAP]] [#jc1a804d]
-[[XML>#d17c877b]]であり、古い。
-新規採用は、ほぼ、無い。
***[[REST]] [#f3bf594e]
-HTTPメソッドのリクエストと、
-[[JSON>#uaf487cb]]、[[XML>#d17c877b]]のレスポンス
***[[Swagger (OpenAPI)]] [#s6662154]
-[[REST>#f3bf594e]]の[[JSON>#uaf487cb]]系を発展させた。
-パラメータ付きの URL テンプレート+HTTP へのカスタム マ...
***[[gRPC]] [#t94d6bdd]
-バイナリ電文([[Protocol Buffers>#o9b67f9e]])
-IDLがあるらしい。
-互換ライブラリが揃っている。
***[[GraphQL]] [#y24afe94]
-データクエリとデータ操作をするリクエスト。
-上記の結果を返す、[[JSON>#uaf487cb]]のレスポンス
-実装は、Schemaクラスを定義し、Queryクラスに以下を実装す...
***[[OData]] [#d76a035d]
-[[XML>#d17c877b]]、[[XML-RPC>RPC#fdad3f1c]]版の[[GraphQL...
-[[Dynamics]]系で採用されている([[Graph API]])。
***何を選択するか? [#ea432ea2]
-好きなのを使えば良いと思いますが、~
以下(参考)を見て、自分は、
--「リクエストは、POST(form or json)
--レスポンスは、[[JSON>#uaf487cb]]で良くない?」
>派だと思いました(≒[[JSON-RPC>RPC#g8bee649]])。
--[[REST]]設計に悩むようであれば、拘らず、[[JSON-RPC>RPC#...
(「WWWブラウザから、URL直打ちのGETで[[JSON>#uaf487cb]]レ...
--何故か?と言うと、以下の辺りが根拠になっていると思いま...
---[[相互運用可能なBeanが生成される仕組み>JSONのparseを色...
---コレは、RFCなどで標準化はされていませんが、[[JSON>#uaf...
言語間で似通っているため、安定して出来る芸当になっている...
-参考
--API 設計: gRPC、OpenAPI、REST の概要と、それらを使用す...
https://cloud.google.com/blog/ja/products/api-management/...
--API 設計ガイダンス - Best practices for cloud applicati...
https://docs.microsoft.com/ja-jp/azure/architecture/best-...
**ペイロード [#n84896e1]
***[[XML]] [#d17c877b]
-リクエストにも[[XML]]を使うと、[[SOAP]]
-RESTでの[[XML>#f3bf594e]]の採用は減ってきている。
***[[JSON]] [#uaf487cb]
リクエストにも[[JSON]]を使うと、[[JSON-RPC>RPC#g8bee649]]
***[[MessagePack]] [#df0a9ae0]
***[[Protocol Buffers]] [#o9b67f9e]
***[[CBOR]] [#q54548e5]
**その他 [#y273e634]
***[[クロス ドメイン接続]] [#m3ca699c]
***[[WebAPIの認証]] [#x3413d74]
***[[API Gateway]] [#yd690707]
**ツール [#zbd74814]
***[[cURLコマンド]] [#ia62f4b3]
***[[Postman]] [#n0186e77]
*[[.NET開発]] [#z73f28e5]
**[[HttpClientの類の使い方]] [#wa3bf61e]
**[[ASP.NET]] [#k723a586]
***[[ASP.NET Web Service]] [#z7244f64]
***[[WCF]] (Windows Communication Foundation) [#w4b2a2bb]
***[[ASP.NET Web API]] [#d868dd17]
----
Tags: [[:プログラミング]], [[:通信技術]], [[:.NET開発]], ...
ページ名: