Дизайн сайта AJAX - PullRequest
       1

Дизайн сайта AJAX

2 голосов
/ 22 апреля 2010

На что стоит обратить внимание при разработке веб-сайта с помощью AJAX? Должны ли заботиться об условиях, скажем, таймаутах, обработке ошибок, например?

Лучшие практики? Какие параметры нужно учитывать при проектировании и кодировании?

Ответы [ 3 ]

2 голосов
/ 22 апреля 2010

Я предполагаю, что это, вероятно, станет совместным советом, поэтому вот один из моего опыта.

При работе с AJAX и Internet Explorer я обнаружил, что IE иногда любит кэшировать ответы на ваши запросы. Так что, если вы обнаружите, что запросы работают в Firefox, но не в IE, это может быть причиной.

Решение, просто добавьте дополнительный параметр к вашему URL-адресу запроса, который в большинстве случаев будет совершенно неактуален. Параметр может быть любым, но значение должно постоянно меняться и всегда отличаться. Лучшее решение, которое я нашел, - это использовать метку даты / времени, так как время постоянно увеличивается. Для визуального ученика вот пример.

Обычный запрос

http://example.com/controller/action?query=john

Запросы на работу с IE

Первый запрос

http://example.com/controller/action?query=john&seed=1234567890

Второй запрос

http://example.com/controller/action?query=john&seed=2345678901

Причина, по которой это работает, заключается в том, что IE видит его как новый URI, который он никогда не получал ранее, поэтому в кеше для него ничего нет.

2 голосов
/ 22 апреля 2010

Есть несколько разных представлений:

Рамки AJAXs

  • Есть несколько - боюсьЯ не использовал много, но они покроют большую часть сантехники для вас и решат проблемы совместимости с X-Browser.
  • jQuery очень часто используется (поэтому, вероятно, хорош для вашего резюме).
  • ASP.NET AJAX, если вы работаете на платформе MS.
  • Прокатить себя можно поучительно - но вы захотите сделать это только по правильным причинам.

Зависимости

  • Какие браузеры будут использовать сайт и что они поддерживают, применимы все старые проблемы совместимости JavaScript X-Browser.
  • Здесь должна помочь хорошая структура.
  • Будьте осторожны, как вы управляете зависимостями между кодом на стороне клиента и кодом на стороне сервера;Вы хотите обеспечить максимально возможную согласованность и избежать жесткого кодирования и запекания другого мусора, который усложнит обслуживание и изменит со временем.

Разработка интерфейса API / интерфейса

Безопасность

  • Публикация AJAX API в сети имеет свой собственный наборБезопасность, будьте осторожны с ними.
  • Не доверяйте вводу пользователя / системы, убедитесь, что вы проверяете все отправляемые вызовы.
  • Не забудьте, что вы можете защитить свой API (или частиоб этом) в защищенной части сайта.Пользователи, прошедшие проверку подлинности, также будут проходить проверку подлинности для использования любых интерфейсов AJAX, защищенных таким образом.

Документация

  • Сам по себе AJAX не позволяет описывать себя (как веб-службы могут через WSDL);Я когда-то делал, чтобы взаимодействие на стороне сервера предоставляло информацию о том, как его следует вызывать, если он вызывается неправильно, или разрешал вызывать каждый интерфейс с общим параметром «Справка» - при вызове он возвращает всю информацию, которую вынужно знать, как его назвать.
  • Ваш подход будет зависеть от того, кто может использовать / вызывать API: является ли оно частью веб-приложения, которое будет работать только в локальной сети компании, или же это будетwww облицовка?
0 голосов
/ 22 апреля 2010

Обеспечение удобства использования для пользователей без включенного JavaScript, также известного как «прогрессивное улучшение».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...