此处的每个文档:https://developer.chrome.com/extensions/webRequest
发起者(通常是发出请求的域)是optional
,并且由于我使用TypeScript,所以键入接口还指出initiator
的值可以是{{1} }。
在什么情况下string | undefined
的值为initiator
?我四处搜寻,找不到任何有用的答案。
提前谢谢!
答案 0 :(得分:1)
引用source code:
对于浏览器启动的请求(例如导航)可能为null。
表示页面本身的主要请求。这样的请求没有所有者/发起者,因为此属性的目的是将子资源归因于其拥有的页面URL,以便确定扩展是否有权入侵。
这是对页面本身的典型请求,如onBeforeRequest侦听器所示:
{
"frameId": 0,
"method": "GET",
"parentFrameId": -1,
"requestId": "86",
"tabId": 15,
"timeStamp": 1551468325912.045,
"type": "main_frame",
"url": "https://github.com/"
}
也许您可以在TS代码中将属性声明为可选。