Data: URI scheme
Bu makalenin doğru başlığı veridir: URI plan. Birinci mektup teknik koşulları nedeniyle sermaye sağlananı gösterdi.
The veri: URI plan IETF standart RFC 2397 'de tanımladı , Onlar dış bir kaynak gibi işaret etmişler gibinin, küçük veri parçaları inlinenin dahil etmesi ,a izin verdiği plan yapan bir URIdir. Onlar alternatif dahil etme yöntemleri , cidle meselâ mimdenin, uzak daha basit olana bakarlar: Veya: . RFC 'da ki ifadeye göre , veri: URIs gerçekte URLs ,dir aslında Onlar değili yapmalarına rağmen anythingilizceyi belirleyin:
data: URIs ÅŸu anda desteklenir:
- Gecko ve türemişleri , meselâ Firefox
- Opera
- KDE , KIO giriş/çıktı sistemden geçerek. Bu KDE tarayıcı , Konqueror'a veri URIs'i desteklemek için izin verir.
- Safari; OS X mimarlık köle gibi çalışan KIO'i paylaşmaz bu yüzden safari olmasına rağmen motoru icra ediyor olan yürütmeler paylaşılmaz. Konqueror'un KHTML motorunun bir türevidir
Microsofdun internet gezgini , versiyon 7 'nin 'i , veriyi desteklemediği gibi: URIs. İnternet gezgininin erken versiyonları unrecognised davrandı: URIs HTML kaynak , bu yüzden bir şey hoşlandığı gibi: & lt; B & gt; Cesur & lt; /b & gt; Bu versiyonlarda geniş olarak veriye karşılıktı: Metin/html , & lt; B & gt; Cesur & lt; /b & gt; Tarayıcılar o destek verisinde: HTML 'da ki URIs
Contents
1 Advantages 2 Disadvantages 3 Format 4 örnekler4.1 HTML 4.2 CSS 4.3 JavaScript 4.4 dahil etme veya CSS kullanma PHP
5 also 6 dış links
//
Advantages
- HTTP isteği görür ve Başlık trafiği veri , bu yüzden veriyi iyice yerleştirilen gerektirmedi: URIs bir veri gibi daha az ağ kaynakları ne zaman kodlama inline içeriğin baştan yukarısını kullanır: URI baştan yukarı HTTPden daha küçüktür.
- Web tarayıcılar bir sunucuya iki benzer bağlantının maksimum birini kullanmak için tipik olarak yapılandırılır[ RFC başına gibi] , bu yüzden diğer içerik için inline veri bedavalar yukarı bir download bağlantı.
- Browsers veriyi içeren bir dosya için daha az depo girişi yönetir: URIs. Sınırlıyla
- Environments veya O işaret etmek için haricen veya elverişsize engel olulan oluncanın, içeriği iyice lyerleştiren dış kaynaklara erişimi sınırladı. örneğin Gelişmiş bir HTML düzenleme alanı bir yapıştırılmışı kabul edebildi veya Resim ve bir veriye dönme onu ekledi: Kullanıcıdan dış kaynakların karmaşıklığı saklamak için URI.
- HTTPS güvenli çevreler tüm HTTP için akma güvenliği sağlayanı oğunlukla tamamen gerektirir veya Kullanıcı öğeleri istenen karıştırılmış güvenli birini ve emniyetsiz öğe çevresi bildirilmiş olacak. HTTPS isteklerin isteyen yaygın HTTP 'ın üzerinde önemli giderleri var. Veri URI 'da ki veri iyice lyerleştirmek için imkan bu durumda daha fazla significantlya çabuk giden geliştirmedir.
Disadvantages
- Embedded içerik çekilmiş olmalı ve Değişmeler o zaman dair-embedded sonra yapılmış , dair-encoded ve olmadan önce şifre çözdü. içerme dosyasının bölümü olan genellikle iyice yerleştiren
- Information. Redownloadeddir , Ve tarayıcının deposundan böyle yararlanma
- Browser maksimum bir veri büyüklüğünü sağlayan URI uzunluğa sınırlar. Örneğin , operadaki URIs 4kBın limidine sahip olmak için kullandı.
- Data basit bir akım , ve çok çevreler işlem yapıyor olduğun gibi içerilir( Meselâ web tarayıcıları) Konteynerler kullanmayı desteklemeyebilir( Meselâ multipart/alternatif veya mesaj/rfc822) Daha muhteşem karmaşıklık meselâ metadata , veri sıkıştırması , veya içerik müzakeresini sağlamak.
- Microsofdun internet gezgini , versiyonlar 6 'nın 'ı ve 7 , eksiklikler desteklediği gibi.
Under kesin bazı mümkün ek dezavantajlara var şartlandırır:
- Base64-encoded veri: URIs çift karşılıklarıdan kabaca büyüklükte 33% daha geniştir. Notu görün( 1)
- URL-encoded veri: 200% daha genişe URIs kalkmak( Uç durumlarda) Den orijinal metin içeriği. Notu görün( 1)
( 1) Eğer bazı içerik kodlaması mekanizması , örneğin bir HTTP içerik-kodlama başlığın yolu ileyi kullanılan gzipten hoşlanırsa çok bir dezavantaj değildir.
Format
data: [ & lt; Mim-tip & gt; ] [ ; Base64] , & lt; Veri & gt;
The kodlama işaret edilir; Base64. Veri eğer o şimdiki olursa base64 gibi kodlanır. O verisiz( Octetsin gibi bir ardışıklığı) Güvenli URL karakterlerin octets iç aralığı için ASCII kodlama kullanmayı gösterilir mi ve O aralığın dışı octets için URLs 'ın standart %xx büyü kodlamasını kullanıyor. Eğer & lt; Mim-tip & gt; İhmal edilir mi , O metin/sadeceye yerine getirmer; Charset = biz-ASCII. ( Tip ihmal edilmiş olabilir fakat Charset parametre bir stenografi gibi sağladı. )
Examples
HTML
An HTML parça küçük kırmızı bir noktanın bir resimini iyice yerleştiriyor:
& lt; İmg src =" Veri: Resim/png; Base64 , iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABGdBTUEAALGP C/xhBQAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9YGARc5KB0XV+IA AAAddEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIFRoZSBHSU1Q72QlbgAAAF1J REFUGNO9zL0NglAAxPEfdLTs4BZM4DIO4C7OwQg2JoQ9LE1exdlYvBBeZ7jq ch9//q1uH4TLzw4d6+ErXMMcXuHWxId3KOETnnXXV6MJpcq2MLaI97CER3N0 vr4MkhoXe0rZigAAAABJRU5ErkJggg = =" Alt =" Kırmızı nokta" / & gt;
Note o bir URI , veri gibi: URI whitespacesle formattable olmalı , Fakat pratik yayınlar onun, base64 kodlamayla nasıl ilgili olduğu var[ 1] . Yazarlar veriyi kodlanan base64 için whitespaces kullanmandan kaçınır: URIs.
CSS
A CSS bir arka plan resimini içerdiğini yönetir( , newlines açıklık için tekrar ilave etti) :
ul. Katalog & gt; Li. { sınır-solu tamamlayın: 20px; Arka plan: Url( Veri: Resim/png; Base64 , iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAA ABlBMVEUAAAD///+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeN Ge4Ug9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC) Zirve hayır-tekrarlamayı ayrıldı; }
Please izin verilen karakterlerde daha fazla bilgi için CSS2.1 URI sözdizimi ve quotingilizceyi okur:
JavaScript
A JavaScript ifade o açıklık iyice yerleştirilmiş bir subwindow , bir dipnot linkine gelince:
window. Açıklık( 'data: Metin/html; Charset = utf-8 , %3C! DOCTYPE%20HTML%20PUBLIC%20%22-'+ '%2F%2FW3C%2F%2FDTD%20HTML%204.0%2F%2FEN%22%3E%0D%0A%3Chtml%20lang%3D%22en'+ '%22%3E%0D%0A%3Chead%3E%3Ctitle%3EEmbedded%20Window%3C%2Ftitle%3E%3C%2Fhea'+ 'd%3E%0D%0A%3Cbody%3E%3Ch1%3E42%3C%2Fh1%3E%3C%2Fbody%3E%0D%0A%3C%2Fhtml%3E'+ '%0D%0A' , ' _ blank' , 'height = 300 , genişlik = 400') ; HTML 'da ki
dahil etme veya CSS kullanma PHP
Because veri URLs insan okunaklı değildir , Bir web sitesi yazarı bir scripting dil meselâ PHP 'ın yolu ile sayfada dahil olan kodlanmış verini tercih eder. Hiçbir değiştirmeler HTML dosyaya yapılmış olma ihtiyaç duymayan bunun avantajı var. , Eğer dahil dosya değişmeleri ve hatta çift veri arasında bir ayrılma tutmanını ve metin formatları kurdu Dezavantajlar daha muhteşem sunucu işlemcisini içerir ve Disk ,ı kullanır ve O bu oldukça bir sunucu-yan sayfa depo kullanmayı küçüldülen olmasına rağmen okumak zorunda olduğundan beri her istekte dosya ,ı kodlar.
& lt; ? Php fonksiyon verisi _ url( $file , $mime) { $contents = dosya _ _ içerikleri alır( $file) ; $base64 = base64 _ kodlar( $contents) ; Dönüş( 'data: '. $mime. '; Base64 , '. $base64) ; }? & gt; & lt; İmg src =" & lt; ? Php yankı verisi _ url( " Fil. Png" ," Resim/png" ) ? & gt; " Alt =" Bir fil" / & gt;
Similarly , , Eğer CSS PHP tarafından işlem yapılan olsaydı fonksiyonun üzerinde kullanılmış hatta olabilir:
& lt; ? Php başlık( 'Content-tip: Metin/css') ; ? & gt; Div. Menü { arka plan-resim: Url( & lt; ? Php yankı verisi _ url( " Menü _ arka plan. Png" ," Resim/png" ) ? & gt; ) ; }
In hem durum , müşteri veya sunucu yan özellikler/UA algılama/ayırım sistemler ,( Koşullu yorumlardan hoşlanın) Standart bir httpı sağlayan olur: İnternet gezgini için URL ve diğer daha eski tarayıcılar. Bir HTML belgeye kaynaklar bağlama için also
- An alternatif gören
, HTML e-posta haberlerini ekseriyetle verdi. Mim HTMLdir Kullanılmış mediatypes
dış links
- RFC 2397
- The veri için
- MIME: URI kitchen
- About veri: URLs ve mozilla implementation
- data: Art arda takma stili Sheets
- Video tekrarla URL tests
- DataURLMaker
- Using veri URLs XML format
'te Base64-encode veri URIs'i etkili bir şekilde kullanıyor
data uri ile ilgili Anahtar Kelimeler :not using CSS with browsers such HTML than for URLs HTTP are content URI data URIs and the that encoding
Öğrenebileceğiniz diğer şeyler :
data uri,
David Page,
David Paice,
David Paich,
David Paisley,
David Pajo,
David Pakman,
David Palffy,
David Ricardo,
David Roney,
David Schwimmer,
David Seymour,
David Spangler,
David Stubbs,
David Stupich,
David Susskind,
David Tennant,
David Tepper,
David Terbrugge,
David Terence Puttnam,
David Terence Puttnam, Baron Puttnam,
David Terence, Lord Puttnam of Queensgate Puttnam,
David Terrell,
David Trezeguet,
David Trézéguet,
David Villa,
David, the Elder Teniers,
David, the Younger Hartley,
David, the Younger Teniers,
David, Viscount Lascelles,
David, Viscount Linley,
David-Augustin De Brueys,
Davidson College, NC,
Davidson County, North Carolina,
Davie Allan & the Arrows,
Davie Allan and The Arrows,
Davie Berman,
Davis Corners, Ontario,
Davis County,
Davis Creek, CA,
Davis Totem,
Davis Township, Minnesota,
Davis Township, MN,
Davis University of California,
Davis Vidal,
Davis Wade Stadium,
Davis Waite,
Davit,
Davor Suker,
Davor Å uker,
Davranisçilik,
Davud,
Davud el kayseri,
Davud el-Isbehani,
Davûd el-Isbehânî,
Davud el-Kayseri,
Davud ez-Zahiri,
Davûd ez-Zahiri,
Davud u kayseri,
Davudu kayseri,
Davud-u Kayseri,
Davul,
Davulcu,
Davut,
Davut Disli,
Davut Güloglu,
Davut Heykeli (Michelangelo),
Davut Pasa,
Davutlar,
Davutlar, Kusadasi,
Davutpasa,
Davutpasa Kislasi,
Dawn,
Dawn (Buffy Vampir Avcisi),
Dawn (Vampir Avcisi Buffy),
Dawson,
Dawsons creek,
Daydream — Moorland,
Daydream World Tour,
Dayereh,
Dayo Wong,
Dayo wong chi wah,
Dayo Wong Chi-Wah,
Dayong,
Daypart,
Dayparting,
Daypro,
Dazkiri,
Dazkiri, Afyonkarahisar,
Db-7,
Dbase,
DDL,
DDLJ,
DDOS,
DDR RAM,
DDR SDRAM,
DDR Solo,
DDR SuperNOVA,
DDR SuperNOVA Songlist,
De (Kiril)