- [1] [[NetscapeNavigator]] が内部的に使う [[URI]] で、 [[HTML]] の [[source]] を表示する。 "view-source:" の後には一般的な [[URI]] (とりわけ [[http:]] URI) が続く。

* 仕様書

- [13] ([TIME[2011-05-26 05:40:43 +09:00]] 版) <http://www.iana.org/assignments/uri-schemes/prov/view-source>

* 文書の起源

[21] [[Chrome]] も [[Firefox]] も、[[不透明起源]]としているように見えます。
[[Chrome]] は [CODE(JS)@en[document.origin]] を実装しており、
[CODE(JS)@en[null]] を返します。
[TIME[2016-04-04T11:31:14.700Z]]

* 文書の番地

[22] [[Chrome]] は [CODE(JS)@en[document.URL]] や [CODE(DOMi)@en[Location]]
で [CODE(URI)@en[view-source:]] の付かない元の [[URL]] を示します。
[TIME[2016-04-04T11:32:37.600Z]]

[23] [[Firefox]] は [CODE(URI)@en[view-source:]] [[URL]] を
[CODE(DOMi)@en[Location]] で示します。
[CODE(JS)@en[location.protocol]] は [CODE(URI)@en[view-source:]] となり、
[CODE(JS)@en[location.host]] や [CODE(JS)@en[location.pathname]] や
[CODE(JS)@en[location.search]] は[[空文字列]]とします。
[CODE(JS)@en[location.origin]] は [CODE(URI)@en[view-source:]]
の付かない元の [[URLの起源]]とします。
[TIME[2016-04-04T11:33:44.800Z]]

* 文字コード

[SEE[ [[encoding sniffing algorithm]] ]]

* 実装
[2] [[Refresh:欄]]があるとソース表示でも飛んでしまうこともある不具合が NN2, NN4 PR4 にはあります。

[3] [[NN]]2: 対応。 必ず新窓で開かれる。
- [4] ''[[NC]]4.0 PR4'': 対応。必ず新窓で開かれる。
- [5] ''[[WinIE]] 3.02'': 未対応。
- [6] ''[[WinIE]]6'': 対応。
- [8] ''[[Mozilla]] 1.3a'': 対応。新窓で開かれる。

* ソース表示

[16] 多くの [[Webブラウザー]]は[[ソース表示]]モードを実装しています。

[17] [[ソース表示]]モードを選択すると、表示中のページの [[HTML]] 等の解釈を行わない[[平文]]としての記述を
[[Webブラウザー]]の特別な[[窓]]、あるいは[[テキストエディター]]等の別アプリケーションで表示します。

;; [18] 表示中の[[文書]]の[[直列化]]ではなく、 [[fetch]] により得られた内容を表示するのが普通です。

;; [19] [[構文ハイライト]]等の高度な表示機能が提供されていることもあります。

* メモ

- [7] [WEAK[2002-12-27 09:33]] ''>>2'': こと''も''あるだけで必ずではない。再現条件不明。

[9]
[CITE@en[The view-source protocol no longer works in Internet Explorer 6 for Windows XP Service Pack 2]] ([CODE[2007-01-08 15:38:27 +09:00]] 版) <http://support.microsoft.com/kb/904678/en-us>
([[名無しさん]])

[10]
[CITE@en-us[view-source Protocol]] ([CODE[2007-01-08 15:38:19 +09:00]] 版) <http://msdn.microsoft.com/workshop/networking/predefined/view-source.asp>
([[名無しさん]])

[11]
>>10

>    Available as of Internet Explorer 4.0 or later.
>
    Internet Explorer 6 for Windows XP SP2 and later. For security reasons, the view-source protocol is no longer supported. To view the source code for a URL on a Windows XP SP2-based computer, choose the Source command on the View menu.


([[名無しさん]] [WEAK[2007-01-08 06:41:45 +00:00]])

[12] [[Gecko]] は [CODE(URI)@en[[[view-source:]]]] の後が [CODE(URI)@en[[[http:]]]] [[URL]]
なら [CODE(URI)@en[[[http:]]]] [[URL]] として[[正準化]]するようです。他のブラウザはみな特に[[正準化]]しませんでした。
[TIME[2011-06-04T13:47:14.400Z]]

[14] [CITE[Client-Side JavaScript Reference]]
( ([TIME[2011-02-10 00:16:33 +09:00]] 版))
<http://docs.oracle.com/cd/E19957-01/816-6408-10/document.htm>

[15] [CITE@en[draft-yevstifeyev-view-source-uri-01 - The \x27view-source\x27 URI Scheme]]
( ([TIME[2013-07-22 13:22:03 +09:00]] 版))
<http://tools.ietf.org/html/draft-yevstifeyev-view-source-uri-01>

[20] [CITE[view-sourceへのクリックジャッキングでCSRF対策回避(? - あすのかぜ]]
([TIME[2015-08-06 22:49:23 +09:00]] 版)
<http://d.hatena.ne.jp/ASnoKaze/20120130/1327898800>