Какво е AJAX

Може ли да направиш едно бързо обощение какво е това живтно, с какво се храни и каде обитава. В нета не оспях да намеря инфо което да разгадя, но пък е и по-лесно някой добър презентатор да обясни Мерси предварително.
PS:Оправих проблема с фокуса на камерата, за напред няма да го има 🙂

25 thoughts on “Какво е AJAX

  1. Awaken

    Бях чел някъде, че като зареждам страница с AJAX е добре да ползвам #! вместо # (за hash става въпрос) заради Google. Та да питам има ли нещо вярно в това?

  2. gatakka Автор

    Не точно. # се използва за да може после да контролираш back бутона, също така и съдържанието.
    В смисъл понеже # не презарежда страницата можеше да имаш
    #profile
    #pictures
    #?user=1234
    И това го хващаш с JS и знаеш какво да покажеш на потребителя
    Така някой може да даде директен линк към определена част на сайта ти, понеже при AJAX няма промяна на URL, изпозлването на HASH (#) оправя този проблем.
    Схвана ли?

  3. deiman

    Много интересна тема, добър пример може да се даде също със коментарите в youtube. Преди за да прехвърлиш на другата страница с коментари трябваше да презаредиш цялата страница и клипът прекъсваше естествено 🙂 , и това беше адски тъпо. Докато сега … зареждам коментарите…. и готово, като цяло много готино нещо.

  4. gatakka Автор

    @Awaken ако това го няма паяка няма как да достигне адреса. паяците не изпълняват JS, тоест ти така даваш възможност на паяка да отиде на точно определен ресурс, също така и на потребителя и като бонус back бутона работи 🙂
    Така че да, google се възползва от това, но то не се прави специално за индексиране, по-скоро заради потребителите. Ти искаш потребителя да може да вземе URL и да го сподели с някой друг или по социалните мрежи 🙂
    Това води много трафик 🙂

  5. Awaken

    Да, мерси. А относно AJAX и MVC, защото сега върху това работя. Като пратя заявка към контролера пак трябва да изведа отговора в отделен view, нали?

  6. gatakka Автор

    Ами в случая с JS View-то се поема от браузъра донякъде.
    Аз лично го правя така, че конролера вместо към View отговаря с JSON и вече JS-а на сайта го хваща и форматира.
    Но ако не го правиш с JSON а пращаш чист HTML, тогава да, контролера си вика View, което гради HTML-то, естествено само частта необходима за тази заявка, и я връщаш обратно.

  7. Awaken

    Аз с JSON не съм работил. Как мога да върна стойността на дадена променлива от контролера без echo?

  8. Данаил

    аз съм с Firefox 4 , подръжката на websockets работи, да по подразбиране е спряна, но не е проблем да си я пусне човек.

  9. gatakka Автор

    @Awaken и echo да ползваш от контролера в случая е ОК, но сложи хедърите че е json
    header(‘Content-type: application/json’);
    header(‘Cache-Control: no-cache, must-revalidate’);
    header(‘Expires: Mon, 26 Jul 1997 05:00:00 GMT’);
    echo json_encode($my_data);
    exit;

  10. Слави Панталеев

    Здравейте, реших да ви споделя 2 PHP/AJAX решения, които значително опростяват работата и ви помагат да избегнете цялото това ръчно пускане на заявки към определени адреси, ръчно генериране на отговор (XML/JSON) и ръчното му обработване като пристигне.

    Едно нелошо решение, с което започнах преди години е Xajax ( http://xajax-project.org ). Използва XML за пренос на данните, а версия 0.6 която се разработва в момента ще може да използва и JSON. Популярен проект е, използван от доста хора. Разработката е позанемарена обаче в последните години и нещата вървят бавно.

    Второто решение е доста по-опростено и олекотено, базирано на по-нови технологии. Sijax ( http://github.com/spantaleev/sijax ) е проект разработен от мен преди няколко месеца. Идеята идва от Xajax, като са премахнати хилядите излишни функционалности и са таргетирани новите неща (само JSON, само PHP5+, само UTF-8).

    Като цяло идеята и зад двете решение (Sijax/Xajax) е извикването на функция, която да се изпълни на сървъра, чрез проста javascript заявка. Предимството е, че библиотеката се грижи за всичко, а нуждата от javascript познания е минимална.

    Примери има в github, а не виждам защо да няма и някое видео по въпроса в бъдеще тук.

  11. SR

    Много ми харесва начинът, по който водиш своят блог. Определено достъпността, по който предоставяш информацията е много полезен особено за тези, които тепърва мислят да се занимават със software development. Лично аз се занимавам с .net, но би ми било интересно да разгелдаш различните framework-ове за работа с PHP, какви са техните минуси плюсове. Късмет и здраве, другото с труд се постига 🙂

  12. Милен

    Хора чудя се аз сега, значи ходя на един курс в който изучаваме JavaScript за момента и попаднах на следната ситуация, значи учителката ни каза че е по-правилно за коментар в „JavaScript“ кода да ползваме „“, казвам добре, но като тръгнах да го позлвам в „Eclipse“ или „netbeans“ ударих на камък не работи, но след като го въведох по този начин -> “ ////“ кода си работи, та измъчва ме сега мисълта правилно ли е да го пиша по този начин?
    Иване прощавай много че питам в коментарите, но неможах да намеря информация в интернет(google главно) по този въпрос. Попринцип избягвам да задавам глупави въпроси на ненужно място. Извинявай още веднъж, ако сметнеш за правилно ми изтрий коментара.

  13. Милен

    Ами питам с цел, да не би като стане повече код да се получи конфликт с други коментари или с друг код.

  14. Black Guardian

    Много добро обяснение… Евала ти, че отделяш време да поучаваш мързеливите хора 🙂 Поздрави!!!

  15. Георги Талов

    Здравей Ванка, рових се навсякъде, но не мога да открия точна информация за сигурността и бързодействието на AJAX. Може ли с няколко изречения да ми дадеш информацийка.

  16. gatakka Автор

    ajax е най-обикновенна http заявка във фонов режим. Всичко, което се отнася за http като цяло, важи и за ajax.
    сървърите не им пука дали е ajax или POST,GET,PUT,DELETE…..

  17. thedem

    @Георги Талов, AJAX е JavaScript. Изпълнява се на твоята машина, от нея зависи бързодействието :). Най вече се ползва за да променяш елементи от страницата, без да рефрешваш цялата страница. Май повечето хора ползват JQuery щото в AJAX има нещо микромеко 🙂

  18. Георги Талов

    Нужна ми е малко повече информация, защото правя един курсов проект. Примерно 10 изречения за бързодействието и 10 за сигурността. Тези работи ги знам и аз, но няма как точно та напиша това. Ще бъда благодарен за помощта.

  19. gatakka Автор

    ама самия въпрос е безсмислен. AJAX като мрежа е http, нищо повече.
    Каквато е сигурността на HTTP заявките, такава е и на AJAX, 1:1 е
    За бързодействие, като скорост е същата като нормална http. Единствената разлика е в частта с JS, ако се ползва json за комуникация, или xml, или нещо такова. Там зависи от формата, библиотеката, и най-вече колко бързо браузъра обработва js

Вашият коментар