25

jsapi ライブラリをダウンロードして含めることができるかどうかを知りたいのですが、ローカル マシンでホストされている google.com ではホストされていません。私のプロジェクトが Web にアクセスできない可能性があるためです。

4

5 に答える 5

25

できません。

ダウンロードjsapi.jsしてローカル マシンに保存できますが、google.com のオンライン バージョンを引き続き参照します。jsapi.js コードを開くと確認できます。

詳細については、この Google 開発者の記事を参照してください。

グラフをオフラインで使用できますか?

いいえ; チャートを使用するには、コンピュータがhttp://www.google.com/jsapiにライブ アクセスできる必要があります 。これは、ページに必要な視覚化ライブラリが、使用する前に動的に読み込まれるためです。適切なライブラリをロードするためのコードは、含まれている jsapi スクリプトの一部であり、google.load() メソッドを呼び出すと呼び出されます。Google の利用規約では、google.load または google.visualization コードをダウンロードしてオフラインで使用することは許可されていません。

ローカルまたはイントラネットでチャート コードをダウンロードしてホストできますか?

ごめん; Google の利用規約では、google.load または google.visualization コードをダウンロードして保存またはホストすることは許可されていません。

于 2014-04-01T08:02:09.150 に答える
2

jsapi.jsファイルを使用して何かをロードするときに、他のスクリプトや css ファイルのトラックロードを要求するため、ファイルだけでは何の役にも立ちません。

そのため、本当に Google Charts を使用してアプリをオフラインにしたい場合は、まずjsapi.jsアプリに を含め、ネットワーク経由でリクエストする他のファイルを監視します ( Fiddlerなどを使用します)。次に、それらもダウンロードしてアプリに含めます。深いうさぎの穴 IYKWIM である可能性があることを忘れないでください。

また、上記のすべては、チャートの使用に関する Google の利用規約に違反することに注意してください。

于 2014-01-17T12:13:12.250 に答える
1

もちろん、概念実証としてのみです。次のファイルを開いて jsapi.js としてローカル マシンに保存するだけです。

http://www.google.com/jsapi

次に、HTML ページから参照を追加します。

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

次の例を参照してください。

http://www.marlenynunez.com/files/jsapi/horizo ​​ntal-news-ticker4.html 質問への回答から[質問]: google jsapiを使用したjqueryの水平ニュースティッカー

しかし、他の人が指摘しているように、まだ Web アクセスが必要な場合があり、API の利用規約ではこの方法での使用が許可されていません。

于 2012-03-07T21:36:44.273 に答える
0

こんにちは、以下の概念を使用して、ファイルを 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;
        };
    }
})();
于 2016-03-02T13:10:55.077 に答える