6

私がやろうとしているのは、Googleドキュメントにテキストを入力するJavaScriptコードを実行することです。これまでに行ったことは、Googleドキュメントを埋め込む個人のWebページにiframe要素を作成することです。今のところ、私がやりたいのは、Googleのソースコードの関数を使用してテキストを入力することです。

Chromeインスペクターをjsビューティファイアーと一緒に使用すると、キープレスイベントをリッスンすると、次のコードセグメントが表示されることがわかりました。

function dKa() {
   var a = eKa, b = TJa ? function(c) {
      return a.call(b.src, b.key, c)
   } : function(c) {
      c = a.call(b.src, b.key, c);
      if (!c)
      return c
   };
   return b
}

単純なイベントでページをロードするときに関数を呼び出してonload="function();"、出力を生成しようとしましたが、何も起こりませんでした。私がやろうとしていることをする方法はありますか?呼び出す正しい関数を見つけて、その関数を介してドキュメントにテキストを書き込むことができるようにします。ただし、コードは難読化されすぎて何もできません。

親フレームからGoogleドキュメント(iframe)コードを参照するには、次のことを行う必要があることを知っています。document.getElementById("iframeID").contentWindow.theFunction() 実行が間違っていますか?私の知る限り、APIを使用してGoogleドキュメントをライブ編集することはできません。

ここに投稿するのもこれが初めてなので、あいまいすぎる場合はお知らせください。明確にできるといいのですが。前もって感謝します。

4

3 に答える 3

11

他の人が指摘しているように、同一生成元ポリシーはあなたが取っているアプローチが機能するのを防ぎ、リバースエンジニアリングを試みることは実装がいつでも変更される可能性があるのでとにかく愚かです(またはGoogleが展開するにつれてユーザーごとに異なることさえあります更新)。

ただし、Googleには、GoogleAppsScriptと呼ばれるこの正確なもののためのAPIがあります。ほとんどのチュートリアルはスプレッドシートを対象としていますが、DocumentApp、DocsList、Documentなどのドキュメントがあります。アプローチを少し考え直す必要があるかもしれませんが、それでも目標を達成できるはずです。

于 2012-06-15T20:22:04.267 に答える
0

クロスサイトのセキュリティ制限のため、私が知る限り、これは不可能です。ソースドメインが同じである場合にのみ、ページのDOMにアクセスできます。

于 2012-06-15T19:57:17.360 に答える
0

そうですね、iFrameのような外部サイトでスクリプトを作成することはできません。同一生成元ポリシーを確認してください。


于 2012-06-15T19:57:35.270 に答える