Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Кросс запрос (https://javascript.ru/forum/misc/57128-kross-zapros.html)

spirit1086 21.07.2015 12:32

Кросс запрос
 
Здравствуйте, подскажите в чем проблема не работал с кросс запросами
Выдает ошибку Unexpected end of input, в консоли url картинки вижу

<!DOCTYPE HTML>
<html>
<head>
  <script src="https://code.jquery.com/jquery-1.10.2.js"></script>
</head>


$.getJSON( "http://evosoft.kz/get_picture.php?url=http://some-web-site.com/index.php&callback=?")
                      .done(function( data ) {
                        $( "#result" ).html(data);
   });

<body>
  <div id="result"></div>
</body>
</html>

spirit1086 21.07.2015 13:31

не ужели ни кто не знает?

Deff 21.07.2015 13:44

1. Проверьте валидность json на запрашиваемой Вами странице http://jsonformatter.curiousconcept.com/
2. В топике для запуска JQ нун ставить библиотеки

<!DOCTYPE HTML>
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
  <script>
<body>
    $.getJSON( "http://evosoft.kz/get_picture.php?url=http://some-web-site.com/index.php&callback=?")
                      .done(function( data ) {
                        $( "#result" ).html(data);
   });
  </script>

  <div id="result"></div>
</body>
</html>

spirit1086 21.07.2015 14:05

http://jsonformatter.curiousconcept.com/ вставил туда url ответ
The data in the JSON data/URL field is not JSON.
Получается ответ идет не ввиде json, в браузере открыл урл он вернул строку
http://evosoft.kz/images/img12221564.jpg
как ее принять не подскажите? Писал через $.post, $get не работает выдает ошибку

XMLHttpRequest cannot load http://evosoft.kz/get_picture.php?ur....com/index.php. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://test.kz' is therefore not allowed access.

Deff 21.07.2015 14:06

spirit1086,
HTML обертывается в топике в BB-тег HTML , а не JS , кнопка (<>)

Deff 21.07.2015 14:09

Цитата:

Сообщение от spirit1086
Получается ответ идет не ввиде json, в браузере открыл урл он вернул строку

Перечитайте про формат json! Ну не в json у Вас данные на странице! Поэтому брауз их не принимает

Если читать лень, проще тогда поставить на запрашиваемой странице данные форматом обычного ява-скрипт файла
типо
var img_src = 'http://evosoft.kz/images/img12221564.jpg'

И делать запрос
$.getScript("http://evosoft.kz/get_picture.php?url=http://some-web-site.com/index.php&callback=?", function(){
  alert(img_src );
});

spirit1086 21.07.2015 14:29

картинка каждый раз может быть разная заранее ее не надо присваивать переменной!Про json я прочитал понял что идет не в том формате, дело в том что сервер у которого я запрашиваю вот так выдает я там править ничего не могу мне дали ссылку для тестирования чтобы я отработал механизм.
$.getScript("http://evosoft.kz/get_picture.php?url=http://some-web-site.com/index.php&callback=?", function(data){
      alert(data);
});

выдает undefined хотя при открытии в браузере выдает текстовую ссылку
В консоли ошибка

get_picture.php?url=http://some-web-site.com/index.php&callback=?&_=1437478331827:1 Uncaught SyntaxError: Unexpected end of input
После & значение из цифр каждый раз разные


Блин уже пол дня маюсь с этим, кто понял как получить данные напишите пожалуйста

Deff 21.07.2015 14:31

spirit1086,
Гы, ну и меняете на серве адрес картинки в тексте страницы, а переменная та же, а в чем проблема ?

Deff 21.07.2015 14:33

Цитата:

Сообщение от spirit1086
Блин уже пол дня маюсь с этим, кто понял как получить данные напишите пожалуйста

Замените строку:

http://evosoft.kz/images/img12221564.jpg

на
var img_src = 'http://evosoft.kz/images/img12221564.jpg'

Красное будете менять на сервере

spirit1086 21.07.2015 14:39

дело в том что сервер у которого я запрашиваю вот так выдает я там править ничего не могу мне дали ссылку для тестирования чтобы я отработал механизм.Я даже не знаю каким образом он выдает
И ничего что файл php'ный getscript вроде с js файлами работает?


Часовой пояс GMT +3, время: 07:59.