Кросс запрос
Здравствуйте, подскажите в чем проблема не работал с кросс запросами
Выдает ошибку 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> |
не ужели ни кто не знает?
|
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> |
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. |
spirit1086,
HTML обертывается в топике в BB-тег HTML , а не JS , кнопка (<>) |
Цитата:
Если читать лень, проще тогда поставить на запрашиваемой странице данные форматом обычного ява-скрипт файла типо 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 ); }); |
картинка каждый раз может быть разная заранее ее не надо присваивать переменной!Про 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 После & значение из цифр каждый раз разные Блин уже пол дня маюсь с этим, кто понял как получить данные напишите пожалуйста |
spirit1086,
Гы, ну и меняете на серве адрес картинки в тексте страницы, а переменная та же, а в чем проблема ? |
Цитата:
http://evosoft.kz/images/img12221564.jpg на var img_src = 'http://evosoft.kz/images/img12221564.jpg' Красное будете менять на сервере |
дело в том что сервер у которого я запрашиваю вот так выдает я там править ничего не могу мне дали ссылку для тестирования чтобы я отработал механизм.Я даже не знаю каким образом он выдает
И ничего что файл php'ный getscript вроде с js файлами работает? |
Цитата:
В противном случае организация кроссдомена будет жутко усложнена и зависить от третьих ресурсов, ибо придётся проксировать. Ну еще вариант ставить на эту запрашиваемую страницу специально разработанный скрипт обмена и ставить эту страницу фреймом. Без правки страницы не обойтись |
Сейчас мне ответил что по этому url в файле прописано для теста только
<?php echo "http://evosoft.kz/images/img12221564.jpg";?> тогда не пойму почему не могу получить И мне сейчас выдали Вы не можете запрашивать информацию с сайта №2 на сайт №1 посредством скриптов исполняемых браузером. Ajax, JQuery и любые библиотеки и объектные скрипты сайта исполнимые браузером - могут работать только на уровне текущего доменного имени, это предусматривает политика безопасности библиотек и браузеров |
spirit1086,
Именно поэтому, для формата json нун прописать <?php echo "functionCall({'1':'http://evosoft.kz/images/img12221564.jpg'})";?> Если картинки одновременно три(к примеру): <?php echo "functionCall({'1':'http://evosoft.kz/images/img12221564.jpg','2':'http://evosoft.kz/images/imgXXXX.png','3':'http://evosoft.kz/images/imgZZZZ.gif'})";?> |
Попрошу прописать данную строку
<?php echo "functionCall({'1':'http://evosoft.kz/images/img12221564.jpg'})";?> а как ее получить и обработать могли бы вы написать ? уже башка не варит |
spirit1086,
Гм, нун реально ставить тему запросов в топике, особенно если нет опыта в js Вы в парсере проверили страницу ? http://jsonformatter.curiousconcept.com/ Если Вы хотите передать произвольный контент со страницы(дабы не ломать голову с json), проще таким кодом js на отдаваемой странице: function addContent (){ /*==123==; Тут любой контент, (кроме /* или */) ==123==;*/} Обработка : $.getScript("Ccылка", function(){ addContent = addContent.toString().split('==123==;')[1] alert(addContent) }); |
Спасибо Deff, реализовал через $.getJson попросил чтобы данные отправляли в формате json.
После возник такой Вопрос если иду по ссылке http://evosoft.kz/get_picture.php?ur...php&callback=? ТО все нормально получаю урл картинки, если подставляю вместо .com домены в зоне .ru выдает что нет доступа к файлу get_picture.php ? |
мне задали такой вопрос, а если мы не могли бы связаться с людьми отвечающими за информацию отдаваемой страницы как бы реализовали это. Я так понял если передается текстом с другого сайта ее получить нельзя?
|
Цитата:
Собственно реальный метод, если они могут помочь(посколь уже помогли), чтобы они и организовали проксирование ресурсов по именно по вашему реферу(линку запроса с Вашего ресурса, дабы другие не грузили их сервер прокси-запросами). Либо осваивайте PHP, разыскивайте ресурс с PHP (или иным серверным языком) и программируйте проксирование для себя. В принципе с нуля можно нарисовать код велосипеда на PHP за пару недель. В инете много инфы. Почитайте тут справочник и учебник http://javascript.ru/ajax/cross-origin-2 |
Часовой пояс GMT +3, время: 22:03. |