Доступ к междоменным данным с использованием jsonp - PullRequest
0 голосов
/ 01 апреля 2011

Что ж, я пытаюсь получить доступ к веб-сервису php (возвращается формат jsonp и url http://service.com/service.jsonp). Сначала он молча терпел неудачу. Итак, я попытался отладить следующий код в прямой Visual Studio и IE.

<script type="text/javascript">
    $(document).ready(function () {
        $('#btnClick').click(function () {
            $.ajax({
                url: "http://url.jsonp",
                dataType: "jsonp",
                jsonp: "data",
                jsonpCallback: "jsonpcallback"
            });

            function jsonpcallback(data) {
                alert('doinng it now');
            }
        });
    });
</script>

После щелчка данные поступают в VS (что является правильным выводом jsonp), но VS выдает ошибку. Ниже приводится результат:

Копировать код

data({"code":001,"msg":"true","data":{"obj1":"val1","obj2":"val2"}})

Ошибка в VS: ошибка времени выполнения Microsoft JScript: «данные» не определены

1 Ответ

0 голосов
/ 01 апреля 2011

Кажется, что возврат с сервера неправильный.Учитывая ваши параметры jQuery, результат должен выглядеть как jsonpcallback({...}).Можете ли вы проверить, что запрошенный URL-адрес такой:

 http://url.jsonp/?data=jsonpcallback

Если это так, серверная сторона делает это неправильно и смешивает имя параметра GET со значением.

...