2015-03-17 5 views
0

Я пытаюсь использовать ipinfo api в своем приложении django.Ответа на этот вопрос от JavaScript с помощью javascript

мой JS код -

var button = document.getElementById('login_button'); 
var user_location = document.getElementById('user_location'); 
button.onclick=function() 
{ 
    get_location(); 
    form.submit(); 
} 
function get_location() 
{ 
    alert('inside'); 
    $.get('http://ipinfo.io', function(response) 
     { 
      alert('response'); 
      user_location.value = response.loc; 
      console.log(response.loc); 
      alert(response.loc); 
     } 
    ,'jsonp'); 
} 

мой HTML-код (отношение) -

<div class="row"> 
      <form id="form" method="post" class="form"> 
       {% csrf_token %} 
       <input type="hidden" id="user_location" name="user_location"/> 
      </form> 
     </div> 
     <div class="row"> 
      <button type="button" id="login_button" name="confirm_login" class="tooltip-test btn btn-sm btn-success" title="Click to Log In"> 
       Login 
      </button> 
     </div> 

и мой views.py соответствующий код -

o = online_status(username = u.username, location = post['user_location']) 
       devices_no = 1 
       o.save() 

Моя проблема начинается с JS файл. Он предупреждает «внутри», но niether предупреждает «отклик», и в моей консоли браузера нет никаких вещей, а также нет предупреждения response.loc.

Где я ошибаюсь .. ??

Помогите мне пожалуйста.

Примечание: мой интернет находится за прокси.

Заранее спасибо.

+0

Этот сайт не позволит вам получить доступ к его содержимому со страницы. Браузер предотвратит такие попытки. – Pointy

+0

И почему это так. Я следил за синтаксисом, данным на самом сайте ... – aquaman

+0

Если вы проверяете заголовки ответов на загрузку этого URL-адреса, вы не увидите заголовок «Access-Control-Allow-Origin». Без этого браузер не позволит вам увидеть его из другого домена. – Pointy

ответ

1

Скорее всего, вы сталкиваетесь с проблемой «перекрестного происхождения». См. here для более подробного обсуждения.

+0

Не показывает Chromium эту ошибку ?? потому что я использую его, но в консоли нет ошибки cors. – aquaman

+0

Множество браузеров печально молчат по этому вопросу. Если вы можете открыть URL-адрес на панели местоположения, но не из AJAX, это почти наверняка проблема с перекрестным происхождением. – Malvolio

+0

Даже с использованием jsonp это не разрешено, любые другие предложения, пожалуйста. – aquaman

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