Base64 bildkodare online - base64 converter Detta onlineverktyg är en omvandlare mellan binär bilddata (gif, jpg, png. Fil) och en base64-sträng. Du kan skriva utdata base64-strängrepresentation av bilden direkt till en HTML-kod eller ett css-formatark, så webbläsaren behöver inte ha en extra begäran-serveradress för bilden och du kan påskynda dina sidor med hjälp av bilden-till-base64-koden. Exempel på bild-till-64-html-kod Nästa exempel html-tagg innehåller ett sådant bildprov som skrivs direkt till html som en base64-data. Taggen representerar en pixel transparent GIF med 42Byte storlek: ltimg altOne pixel transparent GIF srcdata: imagegifbase64, R0lGODlhAQABAIAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAEAAAAAAA77 Som du kan se har hela 42Bytes en pixel GIF i Base64-representation ovan en liknande storlek som en vanlig URL för sådan bild som lagras på server. Http amp amp response headers är vanligen ca 1kB, bas64 kodning har 33 större utdata än den ursprungliga binära bilden, så du kan använda en sådan HTML-tagg för små enskilda filer med storlek upp till 3kB för att påskynda dina HTML-sidor. Om du till exempel tar en enda 1kB-bild som en base64 sparar du upp till 600B överföringsdata och en begäranresponstid. Bild-till-base64-koden är stor hastighet upp till exempel på lutningswebbbilder. Om du vill avkoda bilden i Base64-formatet använd Base64-avkodaren. Sekretessanteckningar för denna onlinekonverterare Vi lagrar inte några data som skickas till denna blankett. Vi loggar inte in eller övervakar data. Den kodade och avkodade data lagras endast minne och konverteras på flyga med ASP eller ASP-kod. Källkod för Base64 Image EncoderIt är ett viktigt säkerhetsproblem och jag är säker på att det borde vara möjligt. Ett enkelt exempel: Du kör en communityportal. Användare är registrerade och laddar upp sina bilder. Din ansökan ger säkerhetsregler när en bild får visas. Användare måste till exempel vara vänner på båda sidor av systemet, så att du kan se någons uppladdade bilder. Här kommer problemet: det är möjligt att någon crawls bildkatalogerna på din server. Men du vill skydda dina användare mot sådana attacker. Om det är möjligt att sätta binärdata för en bild direkt i HTML-uppställning kan du begränsa användaråtkomsten för din bild dir till användaren och gruppera din webbapplikation körs och överföra bilddata till din Apache-användare och grupp direkt i HTML. Den enda möjliga svagheten är då lösenordet för användaren som din webbapp körs som. Finns det redan en möjlighet Om jag behövde säkerhet i min bildkatalog skulle jag inte avslöja katalogen alls. Istället skulle mina img src attribut hänvisa till en sida som skulle ta en userid och en bild id som en parameter. Sidan skulle validera att den användaren verkligen hade tillgång till att se den bilden. Om allting bra, skicka binärt tillbaka. Annars skicka ingenting. Också, jag skulle inte använda gissningsbara ids. Istället klibbar sig något som bas 64 kodade guider. Med HTML5 kan du använda kanfabeltaggen och JavaScript för att göra det här. Du kan kanske göra något med antingen CSS eller en tabelllayout för att rita en bild (förmodligen riktigt dålig prestanda, upplösning, portabilitet). Hur som helst, det går inte att stoppa folk från att ta dina bilder. De kan ta en skärmdump och skära ut den. Som Chris nämnde i sitt svar, med långa bildsidor så att webbadressen för varje bild inte är lätt att gissa eller brutal kraft är viktigt. Och ingen kataloglista på dina webbserverkataloger är också. svarade 12 mar 10 kl 1:38 Du kan flytta bilderna ur dokumentrotten till en privat katalog och leverera dem genom din ansökan, som har tillgång till den katalogen. Varje gång din app genererar en bildtagg skapar den också en kortlivad säkerhetstoken som måste anges när du får tillgång till en viss bild: Chansen är mycket sällsynt att någon kommer att brute tvinga rätt token vid rätt tidpunkt med rätt bild. Det finns åtminstone möjligheter att verifiera token i getImage: Spåra alla bildtaggar i din app och lagra poster i en databas som länkar de slumpmässigt genererade tokens och bild-ID till de begärande användarna. GetImage-åtgärden kontrollerar sedan de medföljande parametrarna mot den databasen. Generera token som ett kontrollsumma (MD5, CRC, vad som helst) över användar-ID, bild ID och kanske dagens nuvarande dag, och var säker på att blanda i ett oförskräckligt salt. GetImage-åtgärden kommer sedan att rekomputera kontrollsumman och kontrollera den mot den angivna för att verifiera användarnas åtkomst. Denna metod kommer att producera mindre kostnader än den första. svarade mar 12 10 på 2:02 Tänk på det här och jag tycker att det är lättare att bara tillämpa åtkomstbegränsningarna på den refererande HTML-sidan igen till quotgetImagequot-åtgärden som någon skrev ovan. Likväl kan kontrollsummetoden minska prestandaffekten eftersom den inte har tillgång till externa resurser för att verifiera begäran. ndash the-banana-king Mar 12 10 på 2:21 Ditt svar 2017 Stack Exchange, IncInline-bilder med data-URL-sammanfattning. Lär dig hur du lägger in bilder i dina webbsidor med datalöppningar. Data: URI-systemet innehåller bilder direkt i dina XHTML-sidor med hjälp av kod istället för externa filer, vilket sparar värdefulla HTTP-förfrågningar. Inline-bilder använder data-URI-systemet för att integrera bilder direkt på webbsidor. Såsom definieras av RFC 2397 är data URI konstruerade för att inbädda små dataobjekt som omedelbara data, som om de hänvisades externt. Användning av inline-bilder sparar HTTP-förfrågningar över externt refererade objekt. Webbläsarsupport för data-URL-adresser Medan Opera 7.2, Firefox, Safari, Netscape och Mozilla stöder data-URI-filer, gör inte Internet Explorer 5-7 det. Men Internet Explorer 8 gör det enligt uppgift, genom att passera Acid2-testet. göra datalösenord ett användbart alternativ för att bädda in mindre dekorativa bilder. Det finns lösningar som du kan använda för äldre versioner av Internet Explorer. Datauppsortsprogrammet Du har utan tvekan sett andra webbadresser i dina resor runtom webben, till exempel http. ftp. och mailto: system. Datan: URL-schema är ett sätt att bädda in omedelbara data som om den inkluderades externt. Data-webbadresser använder följande syntax: När det gäller en bild använder du en mime-typ som identifierar bilden (imagegif, till exempel) följt av en bas64-representation av binärbilden. Här är ett exempel (anteckningar returneras med för att undvika horisontell rullning): Den resulterande bilden är en mappikon (skärmad bild): CSS och Inline Images Inbäddade i XHTML-filer, data-URL-bilder caches inte för upprepad användning, heller cachas de från sida till sida. En teknik för att möjliggöra cachning är att integrera bakgrundsbilder i externa CSS-filer. CSS cachas av webbläsare och dessa bilder kan återanvändas med en väljare, till exempel: Nu återges mappbilden för varje instans av LI (eller du kan också använda en klass eller ett ID här). Vilket ser ut så här i Firefox (beskuren skärmdump): Data-URL-problem Det finns två problem med detta tillvägagångssätt. Du måste omberäkna bas64-data och redigera CSS-filen varje gång bilden ändras. IE-versioner 5-7 stöder inte heller inline-bilder. Det första problemet har en enkel PHP-lösning sålunda: Den här koden läser bilden och konverterar den till base64 automatiskt på servern. Du betalar för denna redigeringskompatibilitet med viss serverhantering. Internet Explorer lösningar Det finns två sätt runt IE: s brist på data-URL-stöd. Använda webbläsaren sniffing kan du enkelt visa den externa bilden för IE och de inbäddade bilderna för andra webbläsare. Eller du kan använda JavaScript för att simulera stöd för data-URL i IE, men den här metoden kräver en hel del JavaScript-kod. PHP-koden ovan gör det enkelt att placera bas64-ekvivalenten av en bild: Nu när servern analyserar CSS-filen, kodas den binära bildfilen automatiskt till base64 och skickar de kodade inlinebilddata direkt i CSS-filen. Därefter måste du lägga till webbläsare sniffing för att leverera bilden för IE och inline bilden för alla andra. Du kan göra detta i CSS-filen med PHP eller med villkorliga kommentarer som denna: där ie. css-filen skulle ha en normal bildreferens sålunda: Fördelar med datalägesdataadresser sparar HTTP-förfrågningar. I kombination med CSS sprites. Data-URL-adresser kan spara flera HTTP-förfrågningar. Det skulle vara intressant att se om data-URL-adresser kan kombineras med USEMAPS eller skapa en CSS-sprite för data-URL. Spara HTTP-förfrågningar, undviker att lägga till objektobjekt Spara parallell tråd - webbläsare som standard till två samtidiga anslutningar per värdnamn HTTPS-förfrågningar förenklas och prestanda förbättras Nackdelar med datadressadresser Inline-bilder stöds inte i Internet Explorer 5-7, även om version 8 stöder dem . Den textbaserade representationen av bilddata i bas64 tar också upp mer byte än binärbilden. I våra tester var bas64-data 39-45 större än binärbilden, men med gzip-kompression reducerades skillnaden till endast 8 till 9 större. Optimera dina bilder innan du konverterar till base64 minskade strängens storlek proportionellt. Det finns storleksbegränsningar för inline-bilder. Webbläsare behöver bara stödja webbadresser upp till 1,024 byte i längd, enligt ovanstående RFC. Webbläsare är mer liberala i vad de accepterar, dock. Opera begränsar dataadresser till ca 4 100 tecken. Firefox stöder dataadresser upp till 100k, så den här tekniken används bäst för små dekorativa bilder. Sammanfattningsvis: IE 5-7 stöder inte Fler steg för att uppdatera inbäddat innehåll (omkod, reembed) Längdsbegränsningar - tekniken är användbar för mindre dekorativa bilder Base64-kodade bilder är ungefär 33 större än deras binära ekvivalenter Exempel Datablad Nedan hittar du några lev exemplen för att testa på din webbläsare, vilket speglar koden ovan. Slutsats Med utgåvan av Internet Explorer 8 blir data URI-plattformar ett lönsamt alternativ. Du kan bädda in små bilder direkt på webbsidor med data-URL-adresser för att spara HTTP-förfrågningar. Data-URL-adresser är ett bekvämt sätt att skapa självhäftande webbsidor som inte är beroende av externa objekt att göra. Ytterligare läsning CSS Sprites: Hur Yahoo och AOL förbättrar webbprestandan Lär dig hur AOL och Yahoo använder CSS sprites för att förbättra prestanda för sina upptagna hemsidor. CSS sprites sparar HTTP-förfrågningar genom att använda CSS-positionering för att selektivt visa kompositbakgrundsbilder. För att maximera tillgänglighet och användbarhet, används CSS sprites bäst för ikoner eller dekorativa effekter. data: URI-ordlista Wikipedia-sida på data-URL-adresser Data-URL-köket Konverterar bilder till data-URL-adresser Datortillverkare konverterar också bilder till data-URL-adresser RFC 2397 Data-URL-systemspecifikationen från IETF.
No comments:
Post a Comment