「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。
-[[戻る>WebAPI]]
* 目次 [#b33db8e0]
#contents
*概要 [#sc07bcb4]
本命は[[CROS>#t317812a]]
-2014年1月にW3C勧告になり、
-そして、最近は、[[CROS>#t317812a]]が一般的になってきた。
*詳細 [#h1a69d11]
**HTML/CSS/JavaScript [#l67660f0]
***[[CORS (Cross-Origin Resource Sharing)]] [#t317812a]
***'XDM (Cross Document Messaging) [#e96d631f]
iframe と (HTML 5 の) postMessage を使った Cross Document Messaging による解決方法
-サーバとはiframe経由で通信する。
-親コンテンツとiframeコンテンツ間の通信にpostMessageを用いる。
***JSONP (JSON with padding) [#ydd864c1]
-jsファイル(正確には、scriptタグのsrc属性)は、~
異なるドメイン上に配置されていても参照・実行できる特性を利用し、
--異なるドメインのサーバと、このjsファイルのsrc属性を経由して通信する。
---クライアント側で異なるドメインと通信するためのscriptタグを動的に生成、
---src属性には、URLのQueryStringに?callback=parseResponseなどと書く。
---サーバーは、parseResponse{"JSON文字列"}的なレスポンスを返す。
---クライアント側のCallbackの引数にJSONが指定され処理できる。
-特徴
--JSONP では認証との組み合わせが困難
--GET の URI の一部の形で付帯情報を渡す必要がある。
--単に、[[CORS (Cross-Origin Resource Sharing)>#t317812a]]の仕組みが無いだけ。
**Plug-in [#g9b7df36]
***Silverlight [#zedcaf11]
接続先のサーバに
-clientaccesspolicy.xml
-または crossdomain.xml
という名前の「ポリシー ファイル」を配置する
***Flash [#d147edf2]
接続先のサーバにcrossdomain.xmlという名前の「ポリシー ファイル」を配置する。
*参考 [#z17f0ffb]
-JavaScript のクロス ドメイン (Cross-Domain) 問題の回避と諸注意 – Tsmatz~
https://blogs.msdn.microsoft.com/tsmatsuz/2011/06/24/jsonp-cross-domain/
**JSONP [#t5583808]
-第11回 JSONP入門:これでできる! クロスブラウザJavaScript入門|gihyo.jp … 技術評論社~
http://gihyo.jp/dev/serial/01/crossbrowser-javascript/0011
-ASP.NET Web APIのサービスをJSONPで呼び出す。 | かるあのメモ on WordPress~
https://karuakun.wordpress.com/2014/07/09/asp-net-web-api%E3%81%AE%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9%E3%82%92jsonp%E3%81%A7%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%99%E3%80%82/
----
Tags: [[:プログラミング]], [[:通信技術]], [[:.NET開発]], [[:.NET Core]], [[:ASP.NET]], [[:ASP.NET Web API]]