1

私のシナリオは:</p>

function testb() { b() } // written by me
function b() { 
    sendRequest1(); //eg: http://test1
    sendRequest2(); //eg: http://test2

} // a third party library, it is black box for me

私の質問は、testb() を呼び出すときです。request1 と request2 の URL をキャプチャ/取得する方法は 1 つありますか? たとえば、クエリ文字列が正しいかなど、いくつかのチェックを行いたいと思います。一部の Web プロキシ ツール (例: Charles) がこれを行うのに役立ちます。しかし、私はJavaScriptでそれをやりたいです。出来ますか?

これは、テスト b() の単なるテストケースです。b() にも似たようなケースが多いからです。そのため、自動化されたケースが役立つ可能性があります。

4

1 に答える 1

2

少なくとも一部のブラウザ(Chromeでこれを試しました)では、XMLHttpRequestオブジェクトに「モンキーパッチ」を適用できます。例:

(function(xhr) {
    var open = XMLHttpRequest.prototype.open;

    xhr.prototype.open = function() {
       console.log(arguments);
       open.apply(this, arguments);
    };

})(XMLHttpRequest);

http://jsfiddle.net/alnitak/tbdNJ/を参照してください

于 2012-04-26T15:46:56.617 に答える