Включить jsapi google на локальный компьютер, а не с google.com - PullRequest
25 голосов
/ 17 февраля 2012

Я хотел бы знать, возможно ли загрузить и включить библиотеку jsapi, но не размещенную на google.com, размещенную на моем локальном компьютере.Потому что возможно, что у моего проекта нет доступа к сети.

Ответы [ 5 ]

25 голосов
/ 01 апреля 2014

Вы не можете.

Вы можете скачать jsapi.js и сохранить его на своем локальном компьютере, но он все равно будет ссылаться на онлайн-версию на google.com.Это можно увидеть, открыв код jsapi.js.

Подробнее см. в этой статье разработчиков Google .

Можно ли использовать диаграммы в автономном режиме?

Нет;ваш компьютер должен иметь прямой доступ к http://www.google.com/jsapi, чтобы использовать графики.Это связано с тем, что библиотеки визуализации, необходимые для вашей страницы, загружаются динамически перед их использованием.Код для загрузки соответствующей библиотеки является частью включенного скрипта jsapi и вызывается при вызове метода google.load ().Наши условия обслуживания не позволяют загружать код google.load или google.visualization для использования в автономном режиме.

Можно ли загрузить и разместить код диаграммы локально или в интрасети?

Извините;наши условия обслуживания не позволяют вам загружать и сохранять или размещать код google.load или google.visualization.

12 голосов
/ 06 июня 2013

Несмотря на то, что вы можете сделать это, и dowlnoad jsapi, весь остальной код все еще находится на серверах Google, библиотеках визуализации и т. Д. Он не относится к сервису, что запрещает его.

Могу ли я использовать графики в автономном режиме? Нет; ваш компьютер должен иметь прямой доступ к http://www.google.com/jsapi, чтобы использовать графики. Это связано с тем, что библиотеки визуализации, необходимые для вашей страницы, загружаются динамически перед их использованием. Код для загрузки соответствующей библиотеки является частью включенного скрипта jsapi и вызывается при вызове метода google.load (). Наши условия обслуживания не позволяют загружать код google.load или google.visualization для использования в автономном режиме. Могу ли я скачать и разместить код диаграммы локально или в интрасети? Сожалею; наши условия обслуживания не позволяют вам загружать и сохранять или размещать код google.load или google.visualization.

2 голосов
/ 17 января 2014
Файл

jsapi.js сам по себе не принесет пользы, поскольку он запрашивает загрузку других скриптов и файлов CSS при загрузке с его помощью.

Так что если вы действительно хотите перевести свое приложение в автономный режим с помощьюGoogle Charts, сначала включите jsapi.js в ваше приложение и отслеживайте другие файлы, которые он запрашивает, по проводам (используя что-то вроде Fiddler ).Затем загрузите их и включите в свое приложение.Помните, что это может быть глубокая кроличья нора IYKWIM.

Также имейте в виду, что все вышеперечисленное нарушает Условия использования Google для использования их карт.

1 голос
/ 08 марта 2012

Абсолютно, хотя только в качестве доказательства концепции. Просто откройте и сохраните следующий файл как jsapi.js на локальном компьютере:

http://www.google.com/jsapi

Затем добавьте ссылку на него со своей HTML-страницы:

    <script type="text/javascript" src="jsapi.js"></script>

См. Пример по адресу:

http://www.marlenynunez.com/files/jsapi/horizontal-news-ticker4.html От ответа к вопросу [вопрос]: горизонтальный тикер новостей jquery с использованием Google jsapi

Но, как уже отмечали другие, вам все еще может понадобиться веб-доступ, и условия обслуживания API не позволяют использовать его таким образом.

0 голосов
/ 02 марта 2016

Привет, я использовал приведенную ниже концепцию для локального добавления файла в приложение anguarjs, и он отлично работает для целей разработки.

/* global angular */
(function(){
    angular.module('googlechart')
        .provider('googleJsapiUrl', googleJsapiUrlProvider);

    function googleJsapiUrlProvider() {
        var protocol = 'http:';
        var url = '//localhost/yourApplicationName/Scripts/chart/jsapi.js';

        this.setProtocol = function (newProtocol) {
            protocol = newProtocol;
        };

        this.setUrl = function (newUrl) {
            url = newUrl;
        };

        this.$get = function () {
            return (protocol ? protocol : '') + url;
        };
    }
})();
...