2014-01-24 4 views
0

Я пытаюсь создать простую страницу Newsfeed на основе интересов пользователей. Ниже я предоставил свой код для того же самого. Я просто не понимаю проблему здесь. Дело в том, что этот же код отлично работает на моем локальном хосте, но он не работает так же, как на онлайн-серверах. Но $ (окно) .scroll (функция() работает отлично и Datas в настоящее время выборки правильно, но функция .load() не в состоянии принести ДАННЫЕ.Функция Javascript .load() не выполняется

я gettingbelow ошибки в JavaScript Consol.log

XMLHttpRequest не может загрузить http://redirect.main-hosting.com/error404.php/26?domain=www.nizilla.tk Нет заголовка «Access-Control-Allow-Origin» на запрашиваемом ресурсе . Начало http://www.nizilla.tk 'поэтому не допускается доступ.

Я также попытался изменить путь src как src = "./ profile-newsfeed/jquery-1.9.1.min.js", но все же я столкнулся с той же ошибкой.

/*-------------------------------- */ 

    <script src="http://www.nizilla.tk/profile-newsfeed/jquery-1.9.1.min.js"> </script> 

<script type="text/javascript"> 

$(document).ready(function() { 
    var track_load = 0; //total loaded record group(s) 
var loading = false; //to prevents multipal ajax loads 
var total_groups = <?php echo $totalpage; ?>; //total record group(s) 
//alert(total_groups); 
if(total_groups<=0) 
    { 
window.location='http://www.nizilla.tk/profile php/profilefollow.php';// 
} 
else 
{ 
$('#container').load('http://www.nizilla.tk/profile php/userinterest.php', {'group_no':track_load}, function() {track_load++;}); //load first group 

$(window).scroll(function() { //detect page scroll 

    if($(window).scrollTop() + $(window).height() == $(document).height())   //user scrolled to bottom of the page? 
    { 

     if(track_load <= total_groups && loading==false) //there's more data to load 
     { 
      loading = true; //prevent further ajax loading 
      $('.animation_image').show(); //show loading image 

      //load data from the server using a HTTP POST request 

      //http://www.nizilla.tk/profile php/userinterest.php 
      $.post('http://www.nizilla.tk/profile php/userinterest.php',{'group_no': track_load}, function(data){ 

       $("#container").append(data); //append received data into the element 

       //hide loading image 
       $('.animation_image').hide(); //hide loading image once data is received 

       track_load++; //loaded group increment 
       loading = false; 

      }).fail(function(xhr, ajaxOptions, thrownError) { //any errors? 

       alert(thrownError); //alert with HTTP error 
       $('.animation_image').hide(); //hide loading image 
       loading = false; 

      }); 

     } 
    } 
}); 

} 
}); 

Было бы очень полезно, если вы можете указать на мою ошибку here..i действительно ценю вашу помощь

+0

проверки этого связанный пост. http://stackoverflow.com/questions/6114436/access-control-allow-origin-error-sending-a-jquery-post-to-google-apis – Jason

ответ

1

Если я понял правильно вы делаете XMLHttpRequest на другой домен, чем ваша страница на , Таким образом, браузер блокирует его, поскольку он обычно разрешает запрос в том же самом источнике по соображениям безопасности. Вам нужно сделать что-то другое, если вы хотите выполнить кросс-доменный запрос. Учебное пособие о том, как достичь этого, - Using CORS.

Когда вы используете почтальон, они не ограничены этой политикой. Цитируется Cross-Origin XMLHttpRequest:

Обычные веб-страниц можно использовать объект XMLHttpRequest для передачи и приема данных с удаленных серверов, но они ограничены тем же политику происхождения. Расширения не так ограничены. Расширение может разговаривать с удаленными серверами за пределами его происхождения, если оно сначала запрашивает разрешения перекрестного происхождения.

+0

Спасибо, Лукас ... Спасибо, уже просмотрел его ... я все еще неспособный получить его. Значит, как это проблема с croww_policy_origin. Все мои ссылки указывают на один и тот же домен, и не мои ссылки указывают на какие-либо перекрестные сайты. И если это действительно проблема, то как это работает? post(). Спасибо за ваш ответ. – nitte93user3232918

+0

http://www.myadress.com и http://myadress.com - это разные домены – KiraLT

1

Возможная душа - CORS ... браузер не позволяет получать данные из разных доменов, их политики безопасности браузера. Браузеры реализуют такую ​​же политику происхождения.

Либо вы размещаете оба приложения в одном домене, либо реализуете CORS для запроса серверного приложения.

EDIT:

www.abc.com != abc.com != http://www.abc.com != https://abc.com != https://www.abc.com

браузер чувствовать разницу там. Они технически разные.

"http://www.nizilla.tk/profile php/userinterest.php" также ссылка, которую вы указываете, не является допустимым, в ней есть место.

+0

HI..Aaron благодарит за ценный комментарий .. но здесь я возвращаюсь к тому же доменному имени .. я не пользуюсь никакими кросс-домен здесь. – nitte93user3232918

+0

И оба моих файла размещены на том же сервере и имени домена. – nitte93user3232918

+0

, который вы используете, проверьте там базовые urls –

0

Функция загрузки не выполняется из-за «той же политики происхождения». Запрошенный ресурс должен находиться на том же сервере.

+0

спасибо Augusto, я очень ценю вашу помощь! так что я делаю неправильно здесь? .. потому что я не использовал кросс-домен здесь, и все мои ссылки указывают на одно и то же доменное имя. Так что я не думаю, что есть вероятность, что у вас такая же _origin_policy. – nitte93user3232918

+0

Привет, Августо .. Я прошел через ваш блог, это действительно хорошо написано. Butas: «Следует помнить, что запрос позволит вам загружать ресурсы только с вашего сайта. То есть вы не можете сказать jQuery, чтобы сообщить страницу/фрагмент с другого сайта ». но это точно мое сомнение здесь, так как все мои jquery-ссылки и другие ссылки указывают на то же имя домена и сервер. Итак, как здесь проблема. – nitte93user3232918

+0

Я рад, что вам понравилось. Затем, если вы уверены, что все ваши запросы указывают на один и тот же сайт, используйте относительный путь, например, профиль php/userinterest.php – Augusto

Смежные вопросы