Google Visualization API - метод вызова ошибки в NPObject - PullRequest
3 голосов
/ 18 апреля 2011

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

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

Спасибо

Обновление: Тот же самый пример на jsFiddle: http://jsfiddle.net/gT5GB/ Кажется, что Localhost не является проблемой, это не-google domain.

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

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

Ответы [ 2 ]

1 голос
/ 07 мая 2011

У меня была такая же проблема сегодня, и я решил ее. Я не нигде не использовал localhost, я был размещен на соответствующем домене, и я тоже получал ошибку 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 решило pr

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...