Webページ上のいくつかの写真には、文字列の大きな文字列が続くと、次のようなSRCまたはCSSの背景画像のURLが続くことに気づいたかもしれません。 IVBORW0KGGOAAAANSUHEUGNZVJLYWR5CCLLPAAAAHHJREFUENO8ZJSOXCAMBFB/KEAUFFR0CBNG3NQPW68ARZDALOZPPPFIBH5EAB8B+TLT9MYQ6 i1buqfaq1cksvcxz2acs6406kugpt5/kuvgz5bdcszo99zodczgvt4mjzmvkqcha68iiepb86gaiov8cdadliuqbs7md3waaabjru5erkjgg%3d。それで、これは何ですか?これはデータURIスキームです。
データURIスキームはRFC2397で定義されており、いくつかの小さなデータを直接Webページに埋め込む目的で、外部ファイルからロードする必要はありません。たとえば、上記の文字列は実際には小さな写真です。これらのキャラクターをコピーしてFirefoxアドレスバーに貼り付けて、1x36の白い灰色のPNG画像を見ることができます。
上記のデータURIでは、データは取得されたデータの契約名を表し、画像/PNGはデータ型名、base64はデータのエンコードメソッド、およびコンマの後にこの画像/PNGファイルのbase64がエンコードされたデータが続きます。
現在、データURIスキームでサポートされているタイプは次のとおりです。
データ:、テキストデータ
データ:テキスト/プレーン、テキストデータ
データ:Text/HTML、HTMLコード
データ:Text/HTML; base64、base64エンコードHTMLコード
データ:テキスト/CSS、CSSコード
データ:Text/CSS; base64、base64エンコードCSSコード
データ:Text/JavaScript、JavaScriptコード
データ:Text/JavaScript; base64、base64エンコードJavaScriptコード
データ:画像/gif; base64、base64エンコードされたGIF画像データ
データ:画像/PNG; base64、base64エンコードされたPNG画像データ
データ:画像/jpeg; base64、base64エンコードされたJPEG画像データ
データ:Image/X-Icon; base64、base64エンコードされたアイコン画像データ
Base64が簡単に言えば、8ビットデータを標準のASCII文字に変換します。インターネットには多くの無料のbase64エンコードツールとデコードツールがあります。 PHPでは、echo base64_encode(file_get_contents( 'wg.png'))など、関数base64_encode()を使用してエンコードできます。
現在、IE8、Firfox、Chrome、およびOpera Browserはすべて、この種の小さなファイルの埋め込みをサポートしています。
写真の例を見てみましょう:Webページの写真は次のように表示できます。
<img src = http://www.letuknowit.com/images/wg.png/>
このように表示することもできます。
コードをコピーします