Блог веб разработки

Блог веб-разработки статьи | видеообзоры | исходный код

javaScript ajax

Я думаю что ни для кого не секрет что JavaScript не может напрямую работать с файловой системой. То есть, если у нас на сервере есть какой либо файл расширением txt, json и т. п. , то мы получить его содержимое с помощью php. Почему , да потому что файлы находятся на сервере, javaScript выполняется на стороне клиента в браузере.

К счастью обходные решения есть всегда. И этим решением являются ajax-запросы.

Допустим у нас есть файл entry.json где у нас некий объект

{
  "response": {
    "entry": {
      "id": 1,
      "name": "Грамматическая ошибка",
      "directory": {
        "id": 1,
        "name": "Типы ошибок"
      },
      "items": [
        {
          "id": "name",
          "name": "Наименование",
          "type": "TEXT",
          "value": "Грамматическая ошибка"
        },
        {
          "id": "weight",
          "name": "Тяжесть",
          "type": "INTEGER",
          "value": 1

        },
        {
          "id": "point",
          "name": "Балл",
          "type": "FLOAT",
          "value": 0.25
        },
        {
          "id": "endDate",
          "name": "Действует до",
          "type": "DATE",
          "value": "12.02.2015"
        },
        {
          "id": "describe",
          "name": "Описание",
          "type": "TEXTAREA",
          "value": "Описание ошибки"
        },
        {
          "id": "units",
          "name": "Единицы измерения",
          "type": "SELECT",
          "values": [
            {
              "id": 1,
              "name": "Баллы",
              "selected": true
            },
            {
              "id": 2,
              "name": "Минуты",
              "selected": false
            },
            {
              "id": 3,
              "name": "Часы",
              "selected": false
            }
          ]
        }
      ]
    }
  }
}

и главная страница на которой мы хотим получить этот объект.

<!DOCTYPE>
<html>
    <head>
        <meta charset="utf-8">
        <title>
           Чтение страниц с помощью  Ajax
        </title>
        <script type="text/javascript" src="js/jquery.js"></script>
    </head>
    <body>
    <h1>
        Главная страница
    </h1>
    </body>
</html>

Теперь давайте напишем для получения содержимого такой код:

var page;
    req = new XMLHttpRequest(); //Ajax запрос на чистом js
req.open("GET", "entry.json", false); //Формируем get запрос и указываем страницу отправки
req.send(null);//Отправляем ajax запрос
if (req.status === 200) { //Проверяем исход если возвращается 200 запрос выполнен успешно, а если 0 то нет
    page =req.responseText;//Получаем содержимое
}
console.log(JSON.parse(page));//Выводим что получили в консоль JSON.parse - преобразует строку в объект

Для более разбалованных программистов мы можем написать подобное на jquery:

$.get('entry.json', function(data) {
    console.log(data);
});

Как видите мы смогли получить содержимое файла entry.json в виде объекта. И теперь с этим объектом мы можем делать все что угодно.

Отмечу что мы можем таким образом считывать любые файлы с сервера без php кода разумеется и если это не запрещено в .htaccess.

Например чтение текстового файла:

$.get('text.txt', function(data) {
    console.log(data);
});

И еще вот, не пытайтесь получить содержимое файлов с других доменов, так это запрещено. Вы можете получать содержимое страниц и файлов ,только в пределах домена где выполняете ajax-запрос. В качестве свидетельства вы можете перейти на какой нибудь сайт и в консоли выполнить наш ajax - запрос , попробуйте указать действительный адрес сайта с другим доменом и увы вы получите ошибку.

Но если вы в качестве адреса укажите другую страницу этого же сайта где выполняете в консоли ajax-запрос, вы без труда получите содержимое запрашиваемой страницы. Только не забывайте указывать протоколы сайтов http или https.

Используя данные знания также можно реализовать динамическую подгрузку страниц, то есть вы сможете переходить по страницам без перезагрузки, но это как говорится совершенно другая история и тема для еще одной статьи.

Я думаю суть данной статьи вы уловили и она была для вас полезна и содержательна. Я желаю вам удачи и поменьше кривого кода!

Оцените статью

Еще статьи

файлы GIT

svg html

CSS шрифты

CSS перенос слов

out of range

shelve python

Linux команды

Комментарии

Проверочный код

tiewess

Sorry for making you review this message which is more than likely to be thought about by you as spam. Yes, spamming is a poor thing. On the various other hand, the best way to learn something new, heretofore unknown, is to take your mind off your day-to-day inconveniences and show rate of interest in a topic that you might have thought about as spam before. Right? <a href=https://kingswayjewelry.com/>rings made in usa</a> We are a team of young individuals who have made a decision to start our very own company and make some cash like several other people on Earth. What do we do? We offer our site visitors a vast selection of wonderful handcrafted rings. All the rings are made by the best artisans from all over the United States. Have you ever seen or worn an eco-friendly opal ring, timber ring, fire opal ring, Damascus ring, silver opal ring, Turquoise ring, blue opal ring, pink ring, meteorite ring, black ring or silver ring? This is only a little component of what you can always discover in our shop. Made in the USA, our handmade rings are not simply attractive and initial presents for, claim, a wedding or birthday celebration, however likewise your amulet, a point that will certainly bring you good luck in life. As settlement for your time invested in reviewing this message, we offer you a 5% discount on any thing you have an interest in. We are expecting meeting you in our shop!

20:53 22-06-2019

tiewess

Sorry for making you review this message which is most likely to be considered by you as spam. Yes, spamming is a negative thing. On the other hand, the most effective means to discover something new, heretofore unknown, is to take your mind off your everyday hassles and also show passion in a topic that you may have considered as spam before. Right? <a href=https://kingswayjewelry.com/>damascus ring</a> We are a team of young men that have made a decision to begin our own business and make some money like several other people on Earth. What do we do? We provide our visitors a broad choice of remarkable handmade rings. All the rings are made by the ideal craftsmen from throughout the United States. Have you ever before seen or used an eco-friendly opal ring, wood ring, fire opal ring, Damascus ring, silver opal ring, Blue-green ring, blue opal ring, pink ring, meteorite ring, black ring or silver ring? This is just a tiny component of what you can constantly discover in our shop. Made in the UNITED STATES, our handmade rings are not just stunning as well as initial gifts for, state, a wedding or birthday celebration, but also your talisman, a point that will absolutely bring you best of luck in life. As compensation for your time spent on reading this message, we provide you a 5% discount on any item you have an interest in. We are anticipating meeting you in our store!

01:23 20-06-2019

tiewess

Our goal at vape4style.com is to provide our consumers with the most effective vaping adventure feasible, helping them vape snappy!. Located in New York City and in business given that 2015, our team are actually a custom-made vaping supermarket offering all types of vape mods, e-liquids, nicotine sodiums, shell systems, containers, coils, and also various other vaping extras, including electric batteries and also external battery chargers. Our e-juices are actually always clean due to the fact that our company certainly not merely market our items retail, but also distribute to local New York City shops along with give wholesale possibilities. This allows us to frequently turn our supply, giving our customers and outlets with one of the most freshest stock possible. If you are actually a vaper or making an effort to get off smoke, you reside in the correct location. Desire to spare some funds in process? Rush and join our e-mail newsletter to get unique nightclub VIP, vape4style discounts, promotions and complimentary giveaways! Our team are an unique Northeast Yihi representative. We are likewise accredited representatives of Bad Drip, Port Vape, Charlie's Chalk Dust, Beard Vape, SVRF by Saveur Vape, Ripe Vapes, Smok, Segeli, Lost Vape, Kangertech, Triton and many more. Do not observe something you are looking for on our site? Not a problem! Merely permit our team understand what you are actually looking for and also our experts are going to find it for you at a inexpensive cost. Have a question concerning a certain item? Our vape experts are going to rejoice to give even more details regarding just about anything our team offer. Just send our company your concern or even phone us. Our crew will rejoice to assist! pachamama shop : <a href=https://vape4style.com/products/yihi-sx-mini-mx-class>Yihi Mini MX </a>

12:49 17-06-2019

taxitiewess

Я.такси Самара-это отличная возможность произвести заказ авто в любое время, куда угодно. Произвести заявку машины сегодня можно как на интернет-сайте, по мобильнику позвонив диспетчеру, так и с помощью мобильного онлайн-сервиса . Вам нужно назвать адрес, ваш номер мобильного, время когда требуется автомобиль. Можно заказать Я. такси с детским креслом для перевозки детей, в вечернее время после встреч надежнее воспользоваться Яндекс такси, чем садиться в транспорт нетрезвым, на вокзал или в аэропорт надёжнее пользоваться Я. такси ненужно думать где оставить свою автомашину. Плата выполняется наличным или безналичным платежом. Время приезда Яндекс такси составляет от 5 до 5 мин. ориентировочно. Преимущества работы в нашем Я. такси: Моментальная регистрация в приложение, Незначительная комиссия, Оплата мгновенная, Постоянный поток заказов, Оператор круглосуточно на связи. Для выполнения работ в Я. такси водителю надо зарегистрироваться самому и транспорт, перечисленное займёт 5 минут. Наша комиссия будет составлять не больше 20 %. Возможно получать зарплату в любое время. У вас всегда обязательно будут заявки. Если появятсявопросы возможно соединиться с постоянно функционирующей службой поддержки. Яндекс такси даёт возможность людям быстро добраться до места назначения. Заказывая данное Я. такси вы получите первоклассный сервис в г. Самара. как устроиться в яндекс такси в самаре - <a href=https://centrsnab163.ru>яндекс такси работа водителем</a>

19:16 15-06-2019

tiewess

Моё почтение! Мы команда СЕО квалифицированных специалистов которые занимаются продвижения и раскрутки интернет-ресурсов во многих типах поисковых системах, а также в соц сетях. Меня зовут Антон, я создатель компании оптимизаторов, разработчиков, специалистов, линкбилдеров, профессионалов, рерайтеров/копирайтеров, маркетологов, link builders, копирайтеров. Мы - компания высококлассных фрилансеров. Ваш личный web-сайт выйдет с нами на другую высоту. Для вас мы предлагаем качественную раскрутку интернет-ресурсов в поисковых системах! У всех без исключения SEO-специалистов представленной команды за плечами громадный высокопрофессиональный путь, мы понимаем, каким способом грамотно формировать ваш собственный портал, выдвигать его на 1-ое место, конвертировать трафик в заказы. Мы вам представляем абсолютно бесплатное предложение по продвижению ваших личных онлайн-сайтов. Мы ждем Вас! продвижение сайта москва бесплатные советы <a href=https://seoturbina.ru>курсы сео бесплатно</a>

08:01 08-06-2019

tiewess

Моё почтение! команда СЕО для раскрутки и продвижения интернет-ресурсов в поисковиках и/или соц интернет-сетях. И меня зовут Антон, я создатель большой группы копирайтеров, рерайтеров/копирайтеров, линкбилдеров, оптимизаторов, маркетологов, link builders, разработчиков, специалистов, профессионалов. Мы - компания профессиональных фрилансеров. Ваш личный портал пойдет с нашей командой на новую высоту. Для вас мы предлагаем качественную раскрутку интернет-сайтов в поисковых системах! У абсолютно всех работников нашей сео-команды за плечами громадный высокопрофессиональный путь, мы в точности знаем, как грамотно создавать ваш интернет-проект, продвигать его на 1 место, перестроить трафик в заказы. У нас сейчас имеется для Лично для вас полностью бесплатное предложение по раскрутке любых интернет-ресурсов. Ждем Вас! продвижение сайтов онлайн бесплатно [url=https://seoturbina.ru]сео аудит сайта бесплатно[/url]

10:47 05-06-2019

История

    ПОДПИСКА

    • Подпишись и получай информацию о выходе новых статей на почту! Просто введите свою почту, нажмите кнопку подписаться. На почту должно будет прийти сообщение с потверждением подписки. Если сообщение не пришло проверьте раздел спам или попробуйте другую почту. Также по всем техническим проблемам вы можете написать в поддержку

    НОВОСТИ

    • Всем привет! Запустил новый сервис для поиска и бесплатного скачивания, прослушивания аудиокниг. Здесь вы можете найти множество литературы и прослушать ее. Вскоре возобновлю написание статей.