onAuthRequiredOptions中的"responseHeaders"、"blocking"、"asyncBlocking"有什么区别?
What is the difference between "responseHeaders", "blocking", "asyncBlocking" in onAuthRequiredOptions?
我正在从事一个必须登录 BasicAuth 网站的项目。我遇到了webRequest and realize there are three different onAuthRequiredOptions的文档:即"responseHeaders"、"blocking"、"asyncBlocking".
我试过了,我唯一发现的是 "asyncBlocking",Chrome 会让扩展有机会触发回调,它可以验证 BasicAuth,改变请求 header, e.t.c..
chrome.webRequest.onAuthRequired.addListener(
function(details, callback) {
callback({
authCredentials: {username: "login", password: "login"}
});
},
{urls: ['<all_urls>']},
['asyncBlocking']
);
但是"responseHeaders","blocking",他们的行为似乎是一样的,他们都没有回调,但后来我想不出其他的区别。
我相信分成三个值是有原因的。所以我想知道他们背后的哲学是什么?
谢谢。
responseHeaders
权限用于填充 details
的可选 属性 并且在几个方法中可用。没有此权限,接收到的 headers 对 webRequest
处理程序不可用。至于 blocking
和 asyncBlocking
它们是相同的,只是一个是同步的而另一个不是。 asyncBlocking
允许您像示例中那样指定回调,而 blocking
期望在处理程序本身中有一个 return
,如下所示:
chrome.webRequest.onAuthRequired.addListener(function(details) {
return {authCredentials: {username: "login", password: "login"}};
},
{urls: ['<all_urls>']},['blocking']);
我正在从事一个必须登录 BasicAuth 网站的项目。我遇到了webRequest and realize there are three different onAuthRequiredOptions的文档:即"responseHeaders"、"blocking"、"asyncBlocking".
我试过了,我唯一发现的是 "asyncBlocking",Chrome 会让扩展有机会触发回调,它可以验证 BasicAuth,改变请求 header, e.t.c..
chrome.webRequest.onAuthRequired.addListener(
function(details, callback) {
callback({
authCredentials: {username: "login", password: "login"}
});
},
{urls: ['<all_urls>']},
['asyncBlocking']
);
但是"responseHeaders","blocking",他们的行为似乎是一样的,他们都没有回调,但后来我想不出其他的区别。
我相信分成三个值是有原因的。所以我想知道他们背后的哲学是什么?
谢谢。
responseHeaders
权限用于填充 details
的可选 属性 并且在几个方法中可用。没有此权限,接收到的 headers 对 webRequest
处理程序不可用。至于 blocking
和 asyncBlocking
它们是相同的,只是一个是同步的而另一个不是。 asyncBlocking
允许您像示例中那样指定回调,而 blocking
期望在处理程序本身中有一个 return
,如下所示:
chrome.webRequest.onAuthRequired.addListener(function(details) {
return {authCredentials: {username: "login", password: "login"}};
},
{urls: ['<all_urls>']},['blocking']);