Прототип плагина для кросс-доменного запроса? (на сайты других хостов!)
Существуют ли плагины или лучшие практики для кросс-доменных запросов ajax?
Я нашел только это: http://www.mellowmorning.com/2007/10/25/introducing-a-cross-site-ajax-plugin-for-prototype/ но у меня это не сработало...
редактировать: я попробовал сначала с прототипом 1.7, после переключения на 1.5 он работал... Но почему он больше не поддерживается в 1.7?! Есть идеи как получить работу в 1.7?
1 ответ
Если вы не найдете родного решения Prototype, то можете попробовать использовать jQuery только для AJAX и Prototype для всего остального. Это всего лишь 29 КБ, и вы можете горячую ссылку из Google (или других CDN на выбор). Просто включите в ваш HTML и Prototype, и jQuery, и не забудьте вызвать jQuery.noConflict(), потому что в противном случае jQuery будет использовать функцию $(), которую также использует Prototype:
<script src="//ajax.googleapis.com/ajax/libs/prototype/1.7.0.0/prototype.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script>
jQuery.noConflict();
</script>
И теперь вы можете использовать оба из них в своем скрипте примерно так:
// using jQuery:
jQuery.ajax({
url: 'http://...',
type: 'POST',
dataType: 'jsonp',
data: {
// ...
},
success: yourHandler
});
// using Prototype:
function yourHandler(data) {
// use returned data
}
Смотрите DEMO (работает с Prototype 1.7 и jQuery 1.5)