Не могу получить JSON с JQuery - PullRequest
0 голосов
/ 27 апреля 2018

Я пытаюсь получить JSON из URL, но он не работает, также я не получаю никакой ошибки

index.js:

$(function () {
    $.getJSON("http://telegram-socks.tk/json", function (data) {
            $("textarea").html(JSON.stringify(data));
        }
    );
});

index.html:

<html>
<head>
    <meta name="viewport" content="initial-scale=1" />
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    <link rel="stylesheet" href="style.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script src="index.js"></script>
</head>
<body>
    <div class="container-fluid">
        <div class="row text-center">
            <div class="col">
                <textarea class="form-control text-center" rows="50"></textarea>
            </div>
        </div>
    </div>
</body>
</html>

telegram-socks.tk / JSON:

{
    "Proxies": [
        "188.166.91.133:1080", 
        "51.15.100.63:1080", 
        ...
    ]
}

(telegram-socks.tk/json является действительным JSON в соответствии с jsonlint.com)

Ответы [ 2 ]

0 голосов
/ 27 апреля 2018

Если вы откроете консоль, вы, вероятно, увидите такую ​​ошибку:

Смешанное содержимое: Страница в 'https://yourpage.com' была загружена через HTTPS, но запросила небезопасную конечную точку XMLHttpRequest' http://telegram -socks.tk / json ' , Этот запрос был заблокирован; содержимое должно быть передано по протоколу HTTPS.

Это происходит потому, что вы находитесь на странице с криптографией по протоколу SSL и пытаетесь получить доступ к незащищенному URL-адресу, который большинство браузеров изначально блокирует.


Или даже так:

Не удалось загрузить http://telegram -socks.tk / json : Нет заголовка «Access-Control-Allow-Origin» на запрошенном ресурсе. Исходный объект 'null', следовательно, не имеет доступа.

То есть браузер снова блокирует ваш запрос из-за небезопасного ресурса на других страницах

См. Фрагмент кода и проверьте консоль:

$(function() {
  $.getJSON("http://telegram-socks.tk/json", function(data) {
    console.log(data);
  }).error(function(e) {
    console.log(e);
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container-fluid">
  <div class="row text-center">
    <div class="col">
      <textarea class="form-control text-center" rows="50"></textarea>
    </div>
  </div>
</div>

Более подробную информацию об этом можно найти в здесь и здесь

0 голосов
/ 27 апреля 2018

Попробуйте это:

$.getJSON("http://telegram-socks.tk/json", function(data) {
      console.log( "success" );
}).fail(function( jqxhr, textStatus, error ) {
console.log(data);
}); 
...