1

実行を停止し(戻らない)、UIによってトリガーされるイベントを待機してから、そのメソッドを続行するメソッドがあります。

chrome.webRequest.onBeforeSendHeaders.addListener(
    function(details) {

        var newHeaders;
        //I need to stop here, wait on some user event, update the `newHeaders` variable with
        //the content set by the user on the page

        return {requestHeaders:newHeaders};
    },
    {urls: ["<all_urls>"]},
    ["blocking", "requestHeaders"]
);

私がしていること:リクエストをインターセプトするクロームプラグインを開発し、htmlからのユーザーの入力によってそれらを変更してから、リクエストを送信します。ドキュメントに基づいて、メソッドで直接変更して返す必要があると思いました。

4

1 に答える 1

0

これがあなたを正しい方向に向けてくれることを願っています:

http://developer.chrome.com/trunk/extensions/webRequest.htmlのドキュメントには次のように書かれています。

オプションの opt_extraInfoSpec 配列に文字列 'blocking' (特定のイベントでのみ許可) が含まれている場合、コールバック関数は同期的に処理されます。これは、コールバック関数が戻るまでリクエストがブロックされることを意味します。この場合、コールバックは、リクエストのその後のライフサイクルを決定する BlockingResponse を返すことができます。コンテキストに応じて、この応答により、要求のキャンセルまたはリダイレクト (onBeforeRequest)、要求のキャンセルまたはヘッダーの変更 (onBeforeSendHeaders、onHeadersReceived)、または認証資格情報の提供 (onAuthRequired) が可能になります。

「ブロック」を指定して、ユーザーから情報を収集できると思います。

于 2012-09-20T19:52:55.783 に答える