API визуализации Google - метод вызова ошибки в NPObject

Я экспериментировал с API визуализации, также известным как динамические диаграммы, и обнаружил, что пример на странице http://code.google.com/apis/visualization/documentation/gallery/annotatedtimeline.html на самом деле не работает на локальном хосте. То есть Error calling method on NPObject выдается при нажатии на событие (точки A и B в вышеупомянутом примере). Я предполагаю, что это проблема безопасности на стороне сервера (флэш-база Google).

Насколько я знаю, не требуется ключ API, аутентификация или что-то подобное. Что мне не хватает?

Спасибо

Обновление: Тот же самый пример на jsFiddle: http://jsfiddle.net/gT5GB/ Localhost, похоже, не проблема, я думаю, это домен, отличный от Google.

Поскольку этот код jsFiddle размещен в домене, примечание в самом низу документации не должно применяться:

Из-за настроек безопасности Flash это (и все визуализации на основе Flash) может работать неправильно при доступе из местоположения файла в браузере (например, file:///c:/webhost/myhost/myviz.html), а не из URL-адрес веб-сервера (например, http://www.myhost.com/myviz.html) .


person Mikulas Dite    schedule 18.04.2011    source источник


Ответы (2)


У меня была такая же проблема сегодня, и я решил ее. Я нигде не использовал локальный хост, я был размещен на правильном домене, и я тоже получал ошибку NPObject при нажатии на легенды. Я также просто использовал пример непосредственно из http://code.google.com/apis/chart/interactive/docs/gallery/annotatedtimeline.html

Причина в том, что в примере Google используется https://www.google.com/jsapi (обратите внимание на HTTPS). , в то время как мой сайт работал по простому HTTP. Я не очень хорошо знаком с Flash, но подозреваю, что у него такие же правила для безопасных/небезопасных запросов, как и для междоменных запросов.

Изменение примера Google для использования http://www.google.com/jsapi решило проблему

person Sam Crawford    schedule 07.05.2011

Да, это ограничение, связанное с безопасностью во Flash. Это описано здесь: Flash — HTTP-запросы не будут работать на локальном хосте

Так что лучше всего разместить это где-нибудь (это может быть сервер на той же машине).

person pixelfreak    schedule 19.04.2011
comment
У меня есть как сторонний удаленный сервер, так и локальный сервер, и ни один из них не соответствует требованиям безопасности флэш-памяти. Как и пример jsFiddle, который я опубликовал. - person Mikulas Dite; 20.04.2011