Orovecz János 2009. Tartalomjegyzék  Az Ajax története  HTTP-kérések és válaszok  XMLHttp-kérések  Egyéb Ajax technika  XML.

Slides:



Advertisements
Hasonló előadás
Zenetár a webszerverünkön, avagy XML használata PHP 5 alatt. Ercsey Balázs (laze) – netpeople.hu.
Advertisements

RESTful Web Service tesztelése
JQuery 8. előadás.
Többszálúság a böngészőben, avagy merjünk-e Javascriptben programot írni? Farkas Máté Budapest.js meetup
IT-DEV-CON – Addig nyújtózkodj, ameddig a felhőd ér! Kőnig Tibor | blogs.msdn.com/tibork-on-ms | twitter.com/tibork.
Az Internet adta lehetőségek
1 Internet. 2 WWW  World Wide Web  Hivatkozásokkal összekötött hipermédia dokumentumok rendszere  Dokumentumok -> Weboldalak  A weboldalak hipertext.
IBM Software Group © 2006 IBM Corporation Hatékonyság és üzleti intelligencia Egységesített felület meglévő alkalmazásainkhoz Szabó János Technikai szakértő.
Social Networking alkalmazás fejlesztése ASP.NET 3.5-tel Árvai Zoltán Consultant, Trainer Számalk Oktatóközpont.
Webszolgáltatások PHP-ben
HTML5 alapú fejlesztő és futtató környezet megvalósítása
Az MVC tervezési minta 2. előadás.
JavaScript.
A web és működése A Világháló három szabványra épül:
Leírónyelvek: HTML és XHTML
WEBOLDALFEJLESZTÉS
XML alapok 2. XML hibaellenőrzés XML a böngészőkben XML parser
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
Instant alkalmazások SharePoint platformon. A fejlesztés és a testre szabás határai elmosódtak. A testre szabást végző legtöbbször nem programozó A.
Microsoft szoftverek a szakképzésben
Kliensoldali Programozás
Lénárt Anett egyetemi adjunktus - PTE PMMK Rendszer- és Szoftvertechnológia Tanszék Előadás JavaScript Tananyag: W eb - programozás.
Google earth és a térinformatika kapcsolata
JavaScript a gyakorlatban. 7. Gyakorlat DHTML  Fa-struktúrájú menük létrehozása  Legördülő menük létrehozása.
JavaScript a gyakorlatban
PHP III. Fájlok, űrlapok.
FTP File Transfer Protocol. Mi az FTP? Az FTP egy olyan protokoll, amely fájlok interneten keresztül végzett átvitelére szolgál. A felhasználók többsége.
Buris Katalin V. földrajz - informatika
Web Application for Resource Planning
Információ és kommunikáció Szilágyi András. Követelmények A cd-n az anyag a következő részeket fedte le: Kliensprogramok, letöltés-vezérlők Kliensprogramok,
Az AJAX technológia használata Ez az előadó neve beosztása vállalata.
XHTML 1. óra. Miért térjünk át HTML-ről XHTML- re? HTML-szabványban tartalom és forma összemosódott HTML 4.0 szabványban stíluslapok használatát javasolták.
JavaScript a gyakorlatban Gyakorlat DHTML  Rétegek szabályozása  HTML-elemek dinamikus változtatása.
Előadóról Név: Zumpf Tamás
Silverlight Ajax Network Bridge Orbán Csaba Epam Systems Kft
WEB 2.0. Amiről szó lesz… Web átalakulóban, a WEB 2.0 –Újszerű weboldalak… –Első a tartalom! –A felhasználók hatalomátvétele?! –A Web mint platform –
Objektum orientált programozás a gyakorlatban
Weboldalak tervezése (X)HTML.
Weboldal tervezés programozó szemmel. Alapok Minden webcím www. –tal kezdődikMinden webcím www. –tal kezdődik Webböngésző = Internet ExplorerWebböngésző.
Script nyelvek alkalmazása a webkartográfiában 1/14 Script nyelvek alkalmazása a webkartográfiában Gede Mátyás MFTTT, március 22.
3. előadás.  Apache szerver tudnivalók  Az index.php .htaccess – web-szerverünk beállításai  Konfigurációs állományok  Adatbázis kapcsolódás beállítása.
Web Architecture. Development of Computing Architectures Monolithic mainframe programming Client Server Real Client Server Web Programming.
Horváth András NetVisor zrt.
HTML5 alapú fejlesztő és futtató környezet megvalósítása
Párizs, a fények városa Szakdolgozatom témájának azért választottam Párizst, mert világ életemben csodáltam magát a várost, mindig is nagy vágyam volt,
Illés Zoltán ELTE Informatikai Kar
További lehetőségek Weblapok programozása. Nyelvek csoportosítása Leíró nyelv (HTML, XML, …) Programozási nyelv  Szerver oldali (PHP, ASP, …)  Kliens.
Az Internet alkalmazásai
XML Mi az XML?  Extensible Markup Language  Kiterjeszthető jelölő nyelv  Adatok, adatstruktúrák leírására szolgál  A HTML és az SGML tapasztalataira.
Készítette: Turócziné Kiscsatári Nóra
Az NVU webszerkesztő program
Térképes Alkalmazásfejlesztés Firefox OS rendszeren.
HTML ÉS PHP (Nagyon) rövid áttekintés. ADATBÁZISRENDSZEREK MŰKÖDÉSI SÉMÁJA Felh. interakció DB Connector MySQL ? A gyakorlaton:
Illés Zoltán ELTE Informatikai Kar
Violet nails Készítette: Csőke Vivien. Bevezetés Téma: Violet nails - műkörömkészítő weblapjának elkészítése A weboldal elérhető az alábbi címen: violetnails.atw.hu.
Spanyolország gyöngyszeme: GRANADA Egy hobby portál kivitelezése.
14. Szóbeli középszintű informatika tétel:
Java web programozás 2..
Illés Zoltán ELTE Informatikai Kar
A böngészőprogram használata. A böngészők értelmezik a html nyelvet, a javascript kódokat és a php kódokat is. Majd ezeket lefuttatja, és azok alapján.
Weboldalba ágyazott interaktív feladatok GeoGebra módra Papp-Varga Zsuzsanna ELTE IK Média- és Oktatásinformatika Tanszék
Webszerkesztés. IP cím pl: Domain cím - DNS pl: ország nevehttp:// számítógép címe World Wide Web Webszerverre.
Információ és kommunikáció
Asynchronous Javascript And XML
Alkalmazott Informatikai Tanszék
A CLIPS keretrendszer
JavaScript a böngészőben
Internet és kommunikáció
Internet és kommunikáció
JavaScript a böngészőben
Előadás másolata:

Orovecz János 2009

Tartalomjegyzék  Az Ajax története  HTTP-kérések és válaszok  XMLHttp-kérések  Egyéb Ajax technika  XML

1. Az Ajax története  Kezdetben a teljes oldalt újra kellett tölteni, amikor új adatokhoz, részekhez kellett hozzáférni  Cél a honlap dinamikus újratöltésével a szerver-kliens közti kommunikáció csökkentése

JavaScript  Szerver-kliens közötti kommunikáció helyett bizonyos adatfeldolgozások a böngészőben zajlanak  Űrlapok tartalma dinamikus módosítható  Új elemeket lehet elhelyezni az oldalon  Később az Ajax „motorja” lett

Az Ajax  „Asynchronous JavaScript and XML”  Segítségével a háttérben tudunk kéréseket küldeni a szerver felé.  A szerver válaszol anélkül, hogy az oldalt újratöltenénk

Összehasonlítás  Hagyományos alkalmazásmodell:  Ajax-alapú alkalmazásmodell:

Ajax felépítése  HTML/XHTML: Tartalomleíró nyelvek  JavaScript: Szkriptnyelv, mely az Ajax- motor alapja  XML: Adatcserélési formátum  CSS: Stílusbeli formázást tesz lehetővé  DOM: A honlap dinamikus frissítéséért felel  XMLHttp: A kommunikációért felelős

2. HTTP-kérések és válaszok Rejtett-keretes POST-kérés:  Létrehozunk egy keretet, mely a szerver- kliens közötti kommunikációért felel  A felhasználó számára nem látható, ugyanis a magasságát vagy szélességét 0 pixelre állítjuk

A módszer működése  A felhasználó egy látható keretre kattint  Egy JavaScript függvény meghívja a rejtett keretet, és kérést küld a szervernek  A szerver válaszol a kérésre  A kapott választ a JavaScript megjeleníti a látható keretben

Példa …

Rejtett-keretek előnye  A böngészők előzményeit karban tudjuk tartani  A böngésző nem tudja, hogy a rejtett keret valóban rejtett, így nyomon követi az összes kérést, amit a rejtett keret bonyolít

Rejtett-keretek hátrányai  A JavaScript korlátozva van, ezért csak ugyanabban a tartományban lévő kereteket tudja használni  Kevés az információnyújtás arról, hogy a háttérben milyen események zajlanak (hiba esetén nem kapunk értesítést)

3. XMLHttp-kérések  Az MSXML nevű ActiveX osztálykönyvtár objektuma  A Mozilla fejlesztettte tovább, létrehozta saját JavaScript-objektumát: az XMLHttpRequestet  Lehetővé teszi, hogy a háttérben HTTP- kéréseket tudjunk kezdeményezni

XHR létrehozása var httpObject = null; function getHTTPObject(){ if (window.ActiveXObject) return new ActiveXObject("Microsoft.XMLHTTP"); else if (window.XMLHttpRequest) return new XMLHttpRequest(); else { alert("Your browser does not support AJAX."); return null; }

XHR meghívása var url_address = ""; var content_id = ""; function ajaxLoad(url_addr,content_id){ this.url_addr = url_addr; this.content_id = content_id; httpObject = getHTTPObject(); if (httpObject != null) { httpObject.open("GET", url_addr, true); httpObject.send(null); httpObject.onreadyStateChange = setOutput; }

XHR válasz function setOutput(){ if(httpObject.readyState == 4 && httpObject.status == 200) { document.getElementById(content_id).innerHTML = httpObject.responseText } Meghívás:

Az XHR előnyei és hátrányai  Előny: A kód sokkal átláthatóbb Hozzá tudunk férni a kérések fejléceihez Tájékoztatást kapunk a kérés sikerességéről  Hátrány: A böngésző nem képes tárolni az előzményeket Csak az ugyanabban a tartományban lévő erőforrásokhoz férünk hozzá

4. Egyéb Ajax technika Képek használata cookie-k helyett: Segítségével csökkentjük a cookie-k küldésének a számát Egy kérés sikerességét el tudjuk dönteni úgy, hogy egy korábban létrehozott képet átméretezünk A kliens oldalon pedig megvizsgáljuk a kép méretét

5. XML  „eXtensible Markup Language”  Egy külső XML fájlból olvassuk ki és dolgozzuk fel az adatokat

XML fájl tartalma (példa) National Treasure Nicolas Cage The Matrix Keanu Reeves

XML fájl megnyitása var XMLDOM = new ActiveXObject(”MXSML2.DOMDocument.6”); XMLDOM.onreadyStateChange = function() { if(XMLDOM.readyState == 4) { //ez az ág akkor hajtódik végre, ha a dokumentum betöltődött } }; XMLDOM.load(url);

XML DOM tulajdonságok  childNodes  firstChild, lastChild  nextSibling, previousSibling  nodeName  nodeType  nodeValue  parentNode

Adatok beolvasása (példa)  var first_movie = XMLDOM.documentElement.firstChild; vagy  var first_movie = XMLDOM.documentElement.childNodes[0];  var second_movie = first_movie.nextSibling;  var number_of_children = XMLDOM.documentElement.childNodes. length;

Az Ajax jövője  Egyre több honlapfejlesztő cég tér át az Ajax-technológia alkalmazására  Az Ajax adta lehetőségek egyre bővülnek: Ajax desktop: p/desktop.html p/desktop.html

További Ajax példák  Google Maps:  Gmail:  Google Reader:

Összefoglalás  Az Ajax segítségével holnapunkat interaktívabbá tehetjük  XMLHttpRequest segítségével könnyedén tudunk a honlap elemeihez Ajax esemény- vezérlőt rendelni, amely a háttérben kéréseket küld a szerver felé, majd a kapott választ megjeleníteni anélkül, hogy a teljes oldalt újratöltenénk