1

我正在尝试做一些与这个线程非常相似的事情,除了 Web 应用程序(用 React 编写)使用Fetch API来进行异步调用而不是 XHR。

有没有一种优雅的方式来拦截/覆盖获取?基本上我想查看站点正在执行的每个 AJAX 调用并从那里获取数据。事后我可以像网站上显示的那样抓取它,但我们都知道 JSON 比 HTML 更容易处理。该网站是 STATEFUL,所以我不能只是重新发送 URL。

我试着写一个像这样的包装器:

function replaceFetch(){
    (function(window, debug){
        var _fetch = window.fetch;

        window.fetch = function(u, o = {}) {
            console.log("This is a test");
            return _fetch(u, o);
        }

    })(window, false);
};

casper.on("page.initialized", function(resource){
    this.evaluate(replaceFetch);
});

但是我收到“无标题套件”错误,并且找不到任何我可以 require() 来实现 Fetch 的东西。

有什么想法吗?谢谢!

4

0 回答 0