Munka a fájlokkal a javascript, 1. rész alapjai - minden, ami web design
Az összes viharos webes fejlesztés, html normák és különösen, dolgozni fájlokat, szinte soha nem változott. Szerencsére, az Advent a HTML5 és a kapcsolódó API meg, most már több lehetőséget, hogy működjenek együtt a fájlokat, mint valaha az előző verziókban böngészők (iOS még mindig nem támogatja a Fájl API).
Típusa Fájl -
Fájl típus meghatározása a leírásban Fájl API [1], és egy absztrakt ábrázolása a fájlt. Fájl minden egyes példánya a következő tulajdonságokkal rendelkezik:
neve - a fájl nevét
mérete - A fájl mérete bájtban
típus - MIME típusú fájl
Fájl tárgy hasznos információt nyújt a fájlt, anélkül, hogy közvetlen hozzáférést biztosít a fájl tartalmát. Ő az egyetlen kapcsolat a fájlt, és lekéri az adatokat ez a fájl egy külön folyamat általában.
Első linkeket fájlokat
Természetesen, a hozzáférést a felhasználói fájlok szigorúan tilos az interneten, mert a tiszta személyes adatokat a biztonsági kérdéseket. Ha nem szeretné, hogy Ön letöltse a weboldalakat, és akkor átvizsgálja a merevlemezt, és rájön, hogy hasznos. Engedély szükséges, hogy a felhasználó hozzáférjen a fájlokat a számítógépén. Mindazonáltal megengedett, ha egy felhasználó úgy dönt, hogy töltse le valamit olvasni fájlokat weboldalakat.
Amikor használja elem , Adsz egy weboldal (és szerver) hozzáférési engedélye a fájl. Annak érdekében, hogy az első, mint te tud kap a Fájl tárgy, ezen a területen .
HTML5 határozza meg a fájlhivatkozásban valamennyi kezelése. Ez a gyűjtemény FileList, amely egy szerkezet formájában nevű tömbben FileList tartalmazó fájl típusát objektumokat az egyes kiválasztott fájl a (Ne felejtsük el, HTML5 segítségével több fájlt jelöl ki a kontroll). Így bármikor, akkor kap hozzáférést a fájlokat, hogy ő választotta, a kódja, mint ez:
Drag and drop fájlokat
Hozzáférés a fájlokat a penész olyan vezérlő is fellépést igényel a felhasználók megtalálják, és válassza ki a fájlt az érdeklődés. Szerencsére HTML5 áthúzása további lehetőségeket ad a felhasználók számára, hogy hozzáférést biztosítsanak a fájlokat: egyszerűen áthúzza a fájlokat az asztalról a böngésző. Mindössze annyit kell tennie, hogy végre, hogy nyomon követheti a két esemény között.
event.dataTransfer.files más FileList objektumot, amelyen keresztül el tudja érni, hogy információt a fájlokat. A kód szinte ugyanaz, mint a forma és ellenőrzése tárgyak, mint például a Fájl érhető el azonos módon.
AJAX pagruzka fájlok
A nagy dolog a tárgy FormData, felveheti a fájlt közvetlenül neki, valójában utánozza a fájlok letöltése keresztül HTML-formában. Mindössze annyit kell tennie, hogy adjunk hozzá egy linket egy fájlt egy bizonyos nevet, és a böngésző a többit. Például:
Miután FormData objektumot a send (), helyénvaló annak tartalmát a HTTP fejléc beállítása automatikusan történik. Nem kell aggódnia, telepítése a megfelelő kódolási formákat használó fájlokat, a szerver fog futni a kapott fájlt, mintha egyszerű HTML űrlap elküldésekor. adatokat olvas az elküldött fájl $ _FILES [ 'photo'] és tekstovyt adatokat a $ _POST [ 'name']. Ez adja meg a rugalmasságot, hogy írjon kódot feldolgozás a szerver oldalon, amely könnyen dolgozni mind a hagyományos HTML-űrlapok és a formák keresztül küldött Ajax.
És ez mind hajtott a legújabb változat a legtöbb böngésző, beleértve az Internet Explorer 10. Sajnos az Internet Explorer 9 nem támogatja ezt.
mi a következő lépés
Kapcsolódó linkek:
Szia kedves látogató!
Nem tudom menteni a bináris adatok oldalán a szerver. Nem tudom megérteni, hogyan kell helyesen kiadja a PHP script, vagy talán a lényeg, valami mást, amit nem hiszem. Kipróbált bináris adatok Blob csomagolószer lehet próbálni ArrayBuffer? POST módszert küld a szerver objektum „Blob” vagy „ArrayBuffer”, akkor lehet, hogy forduljon bármely svoytvam, hogy behívja az adatokat?
A lényege a program célja, hogy segítse a XHR kérést kap egy audio fájlt mp3 formátumban, és később levelet (Spars) azt a szervert.
Köszönöm előre! Üdvözlettel, Oleg.