使用webRequest API获取网页状态代码的正确方法

时间:2019-01-11 07:18:45

标签: javascript google-chrome-extension google-chrome-devtools

在尝试使用onHeadersReceived事件获取状态代码时,仅当我通过在地址栏中键入其URL或重新加载页面或单击“后退/前进”按钮进入网页时,才获得状态代码。但是当我单击超链接时,它不起作用。这是我的代码如何工作的场景:


步骤1:我输入https://www.stackoverflow.com,然后按ENTER。我收到警报消息

  

{loadingUrl:https://www.stackoverflow.com,statusCode:200}

第2步:我点击某个用户提出的问题。现在我没有收到警报消息。


如果通过单击超链接进行导航,如何获取网页的状态码?这是我的代码

chrome.webRequest.onHeadersReceived.addListener(function(details){
    if(!details.initiator)
    {
        var msg = {
            "statusCode": details.statusCode,
            "loadedUrl": details.url
        };
        alert(JSON.stringify(msg)); 
    }
},
{
    urls: ["<all_urls>"]
},
["responseHeaders", "blocking"]);   

0 个答案:

没有答案