0

GM_xmlhttpRequest()特定の状況でページをどのように読むかについて興味があります。
GM_xmlhttpRequest は、ブラウザで Web サイトにアクセスしているかのように Web サイトにアクセスしますか?

セッションは有効なままですか? 例: ブラウザの 1 つのタブから Web サイトにログインし、別のタブから、スクリプトから GM_xmlhttpRequest を送信した場合、この新しい要求もログインされますか?

私が尋ねる理由の 1 つは、スクリプトのある時点で、REMOTE_ADDRPHP からレポートを返すドメインのページの 1 つに GM_xmlhttpRequest を送信しているためです。これは、この関数を呼び出しているページではなく、コンピューターの IP (これが必要です) を報告しています。

4

2 に答える 2

4

GM_xmlhttpRequest は、ブラウザで Web サイトにアクセスしているかのように Web サイトにアクセスしますか? 同様に、セッションは有効なままですか?

はいといいえ。通常、GM_xmlhttpRequestURL に対する Firefox のリクエストのように見えます。通常のヘッダーを送信し、通常すべての Cookie を送信します。そして、はい、リクエストはブラウザから来ているので、あなたの IP アドレスを報告します。これは、Web ページで行ったすべてのセッションが通常保持されることを意味します。

でも:

  1. URL がWeb ページのクロスドメインであり、サードパーティの Cookie無効にしている場合、GM_xmlhttpRequestは Cookie を送信せず、ターゲット サイトはそのサイトとのセッションを認識しません。

  2. GM_xmlhttpRequest要求された URL のみをロードします。Web ページの場合、画像、CSS ファイル、JS ファイルなど (Web ページが呼び出すもの) はロードも処理もされません。ページに埋め込まれた JavaScript は実行されません。

    「応答を返す前にページがレンダリングされるのを待つように AJAX get-request を取得する方法は?」を参照してください。AJAX を利用したサイトを取得する必要がある場合の詳細とヒントについては、 を参照してください。

于 2013-05-29T15:51:00.893 に答える
-2

OMGそれは完全にそうです!!!!!!!!

var server2="http://www.somesiteimloggedinto.com";
var test_data=function(){
    GM_xmlhttpRequest({
        method: "GET",
        url: server2,
        onload: function(response) {
            if(response.status == 200){
                alert(response.responseText);
            }
        },
        onerror: function(response) {
            console.log("Connection to "+server2+" failed.");
        }
    });
};
test_data();
于 2013-05-29T14:14:50.383 に答える