Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.08.2017, 22:02
Интересующийся
Отправить личное сообщение для carder Посмотреть профиль Найти все сообщения от carder
 
Регистрация: 10.12.2013
Сообщений: 15

оптимальное использование данных из XML
рассчитываю стоимость доставки, опираясь на данные из файла XML (там 150 разных значений) и не могу понять, оптимальный ли это вариант, или есть какие-то еще?
Итак, как я себе это понял:
1. Через XMLHttpRequest вызываю XML.
2. Выковыриваю себе нужные значения.
3. Могу использовать эти значения только в составе onreadystatechange (так как запрос асинхронный, а синхронный использовать не рекомендуется).
Всё так, или есть какие-то более удобные альтернативы?

Последний раз редактировалось carder, 24.08.2017 в 22:31.
Ответить с цитированием
  #2 (permalink)  
Старый 24.08.2017, 23:37
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

А этот XML это данные с какого то стороннего сайта которые часто меняются?
Ответить с цитированием
  #3 (permalink)  
Старый 25.08.2017, 12:42
Интересующийся
Отправить личное сообщение для carder Посмотреть профиль Найти все сообщения от carder
 
Регистрация: 10.12.2013
Сообщений: 15

Да, со стороннего сайта, но меняется не часто, поэтому сохраняю на свой сервер и планирую обновлять раз в неделю
Ответить с цитированием
  #4 (permalink)  
Старый 25.08.2017, 12:54
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от carder
поэтому сохраняю на свой сервер и планирую обновлять раз в неделю
А еще распарсить один раз и получать JSON.
Ответить с цитированием
  #5 (permalink)  
Старый 25.08.2017, 19:06
Интересующийся
Отправить личное сообщение для carder Посмотреть профиль Найти все сообщения от carder
 
Регистрация: 10.12.2013
Сообщений: 15

а можно чуть подробнее, пожалуйста? Вот распарсил я, перевел в JSON - как это в скрипт передать? То есть вот эти данные JSON они как передаются?
Если через файл, тем же обращением XMLHttpRequest, то выгоды получается никакой - то же ограничение на глобальную переменную.
Подозреваю, что можно передавать в какой-то скрытый контейнер в html и парсить оттуда, но не встречаю нигде такой рекомендации. Используется такой метод, или как-то еще можно?

Последний раз редактировалось carder, 25.08.2017 в 19:21.
Ответить с цитированием
  #6 (permalink)  
Старый 25.08.2017, 19:44
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от carder
Вот распарсил я, перевел в JSON - как это в скрипт передать?
А что переводить то, парсер сразу готовит массив. Данные этого массива где-то надо хранить. Другими словами, такими вещами занимается планировщик задач cron. Получил, распарсил, сохранил в базе.

При запросе клиента, если на странице требуются эти данные, значит их получают из базы и как JSON отдают на страницу, например в РНР так:

html код страницы ....
<script>
var data = <?=json_encode($res)?>
</script>
</body>
</html>


где $res массив данных полученных из базы.

Можно планировщиком писать полученные данные их xml не в базу, а в подключаемый js-файл. Только в этом случае url подключения должен содержать, например, время последнего изменения этого файла,в противном случае он будет браться не обновленный с сервера, а из кеша.
Ответить с цитированием
  #7 (permalink)  
Старый 25.08.2017, 19:51
Интересующийся
Отправить личное сообщение для carder Посмотреть профиль Найти все сообщения от carder
 
Регистрация: 10.12.2013
Сообщений: 15

а если у меня скрипт внешний подключается, я могу как-то обратиться к data, заданной предложенным методом? Они в одном пространстве?
Ответить с цитированием
  #8 (permalink)  
Старый 25.08.2017, 20:08
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от carder
а если у меня скрипт внешний подключается, я могу как-то обратиться к data, заданной предложенным методом?
Конечно.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Появление/исчезновение дива при клике на ссылку nickostyle jQuery 5 18.01.2016 03:03
Почему скрипт отрабатывает в IE только при первом входе на сайт? tygeddar Элементы интерфейса 3 20.09.2012 01:37
Подружить два скрипта (скроллер+скрипт эффекта при наведении) Che jQuery 26 29.08.2012 10:59
getAllResponseHeaders() и status имеют смысл только при readyState==4? mister_maxim AJAX и COMET 7 27.03.2011 19:08
jQuery Использование textIndent при анимации slim-v Opera, Safari и др. 26 19.12.2010 18:16