1

FireShot APIをJSで利用してURL(またはおそらくリスト)を指定する方法を探しています。FireShotAPIを使用してスクリーンショットを撮り、Imgurにアップロードしてから、URLまたはマークダウンのようなものをユーザーに返します。フォーラム。

方法1:新しいウィンドウを開く

新しいウィンドウでURLを開こうとしましたが、クロスドメインの問題により、JSでそのページを制御できないことがわかりました。iFrameでも同じです。

方法2:簡単$.get()

$.get()私が推測する同じクロスドメインの問題のために、単純な機能はありませんか?

http://jsfiddle.net/t6aeq/

$.get($url.val(), function(data) {
        console.log(data);
});

PHP「プロキシ」経由

そこで、URLのHTMLを取得してJSに返す簡単なPHPスクリプトを作成してみました(を使用してfile_get_contents($url))。しかし、Microsoftのようないくつかのサイトは、私がいくつかの自動化された方法を使用していることを検出し、ある種のエラーページを表示します。また、jQueryを使用してHTMLを返すクエリを実行し、とにそれぞれ追加する方法を見つけることができlink[rel=stylesheet], script, styleないようbodyです。私は別の質問にそれを投稿しましたheaddiv

新しいアイデア:ブラウザレベルでスクリプトを埋め込む

だから私はこれらを回避することを考えたのは、代わりにiMacrosやGreeseMonkeyなどを使用してブラウザレベルのページにスクリプトを挿入することですか?しかし、どうすればそれを行うことができるかについてのガイダンスやヒントはありますか?また、利用可能な場合は純粋なJS / PHPメソッドを使用して、ユーザーがブラウザープラグイン/スクリプトの使用に制限されないようにします(現時点では私が唯一のユーザーになります)

FireShot APIキーとImgurがドメインに制限されているため、これが機能しない可能性があることに突然気づきました。解決策はありますか?

4

1 に答える 1

0

Greasemonkey を使用して FireShot スクリプトを挿入できる場合があります。ただし、最初に「FireShot API キーの作成」ページGM_xmlhttpRequest()から、そのページのドメインの API キーを取得するために使用します。

GM_xmlhttpRequest()には、同じクロスドメインの問題がないことに注意してください$.get()

ただし、現時点では、独自の Firefox アドオンを作成する方がよいかもしれません。たぶん、アイデアのためのFireShotのコードから始めてください。Screengrabアドオンも参照してください。

于 2011-03-26T23:49:43.197 に答える