คำอธิบาย
หมายเหตุ: API นี้เลิกใช้งานแล้ว โปรดดู API ของ declarativeNetRequest แทน ใช้ chrome.declarativeWebRequest API เพื่อสกัดกั้น บล็อก หรือแก้ไขคำขอที่อยู่ระหว่างดำเนินการ ซึ่งเร็วกว่า chrome.webRequest API อย่างมาก เนื่องจากคุณสามารถลงทะเบียนกฎที่จะได้รับการประเมินในเบราว์เซอร์แทนที่จะเป็นเครื่องมือ JavaScript ซึ่งจะช่วยลดเวลาในการตอบสนองแบบ Round Trip และเพิ่มประสิทธิภาพได้
สิทธิ์
declarativeWebRequestคุณต้องประกาศสิทธิ์ "declarativeWebRequest" ในไฟล์ Manifest ของส่วนขยายเพื่อใช้ API นี้ พร้อมกับสิทธิ์ของโฮสต์
{
"name": "My extension",
...
"permissions": [
"declarativeWebRequest",
"*://*/*"
],
...
}
ความพร้อมใช้งาน
ไฟล์ Manifest
โปรดทราบว่าการดำเนินการบางประเภทที่ไม่ใช่การดำเนินการที่มีความละเอียดอ่อนไม่จำเป็นต้องมีสิทธิ์ของโฮสต์
CancelRequestIgnoreRulesRedirectToEmptyDocumentRedirectToTransparentImage
SendMessageToExtension() การดำเนินการต้องมีสิทธิ์ของโฮสต์สำหรับโฮสต์ใดก็ตามที่คุณต้องการให้ทริกเกอร์ข้อความเมื่อมีการส่งคำขอเครือข่าย
ส่วนการดำเนินการอื่นๆ ทั้งหมดต้องมีสิทธิ์การใช้โฮสต์สำหรับ URL ทั้งหมด
ตัวอย่างเช่น หาก "https://*.google.com/*" เป็นสิทธิ์ของโฮสต์เพียงอย่างเดียวที่ส่วนขยายมี ส่วนขยายดังกล่าวอาจตั้งค่ากฎเพื่อทำสิ่งต่อไปนี้
- ยกเลิกคำขอไปยัง
https://www.google.comหรือhttps://anything.else.com - ส่งข้อความเมื่อไปยัง
https://www.google.comแต่ไม่ส่งเมื่อไปยังhttps://something.else.com
ส่วนขยายตั้งค่ากฎเพื่อเปลี่ยนเส้นทาง https://www.google.com ไปยัง https://mail.google.com ไม่ได้
กฎ
Declarative Web Request API เป็นไปตามแนวคิดของ Declarative API คุณสามารถลงทะเบียน
กฎกับออบเจ็กต์เหตุการณ์ chrome.declarativeWebRequest.onRequest ได้
API คำขอเว็บแบบประกาศรองรับเกณฑ์การจับคู่ประเภทเดียวคือ RequestMatcher RequestMatcher จะจับคู่คำขอเครือข่ายก็ต่อเมื่อตรงตามเกณฑ์ทั้งหมดที่ระบุไว้เท่านั้น RequestMatcher ต่อไปนี้จะตรงกับคำขอเครือข่ายเมื่อผู้ใช้ป้อน https://www.example.com ใน
แถบอเนกประสงค์
var matcher = new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com', schemes: ['http'] },
resourceType: ['main_frame']
});
https://www.example.com จะปฏิเสธคำขอไปยัง RequestMatcher เนื่องจากรูปแบบดังกล่าว
นอกจากนี้ คำขอ iframe แบบฝังทั้งหมดจะถูกปฏิเสธเนื่องจากresourceType
หากต้องการยกเลิกคำขอทั้งหมดไปยัง "example.com" คุณสามารถกำหนดกฎได้ดังนี้
var rule = {
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com' } })
],
actions: [
new chrome.declarativeWebRequest.CancelRequest()
]
};
หากต้องการยกเลิกคำขอทั้งหมดไปยัง example.com และ foobar.com คุณสามารถเพิ่มเงื่อนไขที่ 2 ได้
เนื่องจากแต่ละเงื่อนไขเพียงพอที่จะทริกเกอร์การดำเนินการที่ระบุทั้งหมด
var rule2 = {
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'example.com' } }),
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: 'foobar.com' } })
],
actions: [
new chrome.declarativeWebRequest.CancelRequest()
]
};
ลงทะเบียนกฎดังนี้
chrome.declarativeWebRequest.onRequest.addRules([rule2]);
การประเมินเงื่อนไขและการดำเนินการ
Declarative Web Request API เป็นไปตามรูปแบบวงจรของคำขอเว็บของ Web Request API ซึ่งหมายความว่าเงื่อนไขจะทดสอบได้เฉพาะในขั้นตอนที่เฉพาะเจาะจงของคำขอเว็บ และในทำนองเดียวกัน การดำเนินการจะดำเนินการได้เฉพาะในขั้นตอนที่เฉพาะเจาะจงเท่านั้น ตารางต่อไปนี้แสดง ขั้นตอนคำขอที่ใช้ได้กับเงื่อนไขและการดำเนินการ
| ขั้นตอนการส่งคำขอที่สามารถประมวลผลแอตทริบิวต์เงื่อนไขได้ | ||||
|---|---|---|---|---|
| แอตทริบิวต์สภาพ | onBeforeRequest | onBeforeSendHeaders | onHeadersReceived | onAuthRequired |
url |
✓ | ✓ | ✓ | ✓ |
resourceType |
✓ | ✓ | ✓ | ✓ |
contentType |
✓ | |||
excludeContentType |
✓ | |||
responseHeaders |
✓ | |||
excludeResponseHeaders |
✓ | |||
requestHeaders |
✓ | |||
excludeRequestHeaders |
✓ | |||
thirdPartyForCookies |
✓ | ✓ | ✓ | ✓ |
| ขั้นตอนของคำขอที่สามารถดำเนินการได้ | ||||
| กิจกรรม | onBeforeRequest | onBeforeSendHeaders | onHeadersReceived | onAuthRequired |
AddRequestCookie |
✓ | |||
AddResponseCookie |
✓ | |||
AddResponseHeader |
✓ | |||
CancelRequest |
✓ | ✓ | ✓ | ✓ |
EditRequestCookie |
✓ | |||
EditResponseCookie |
✓ | |||
IgnoreRules |
✓ | ✓ | ✓ | ✓ |
RedirectByRegEx |
✓ | ✓ | ||
RedirectRequest |
✓ | ✓ | ||
RedirectToEmptyDocument |
✓ | ✓ | ||
RedirectToTransparentImage |
✓ | ✓ | ||
RemoveRequestCookie |
✓ | |||
RemoveRequestHeader |
✓ | |||
RemoveResponseCookie |
✓ | |||
RemoveResponseHeader |
✓ | |||
SendMessageToExtension |
✓ | ✓ | ✓ | ✓ |
SetRequestHeader |
✓ | |||
ใช้ลำดับความสำคัญเพื่อลบล้างกฎ
คุณเชื่อมโยงกฎกับลำดับความสำคัญได้ตามที่อธิบายไว้ใน Events API กลไกนี้ใช้เพื่อระบุข้อยกเว้นได้ ตัวอย่างต่อไปนี้จะบล็อกคำขอทั้งหมดไปยังรูปภาพที่ชื่อ evil.jpg
ยกเว้นในเซิร์ฟเวอร์ "myserver.com"
var rule1 = {
priority: 100,
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { pathEquals: 'evil.jpg' } })
],
actions: [
new chrome.declarativeWebRequest.CancelRequest()
]
};
var rule2 = {
priority: 1000,
conditions: [
new chrome.declarativeWebRequest.RequestMatcher({
url: { hostSuffix: '.myserver.com' } })
],
actions: [
new chrome.declarativeWebRequest.IgnoreRules({
lowerPriorityThan: 1000 })
]
};
chrome.declarativeWebRequest.onRequest.addRules([rule1, rule2]);
โปรดทราบว่าIgnoreRulesการดำเนินการจะไม่คงอยู่ตลอดขั้นตอน
คำขอ ระบบจะประเมินเงื่อนไขทั้งหมดของกฎทั้งหมดในแต่ละขั้นตอนของคำขอเว็บ หากมีการดำเนินการ IgnoreRules ระบบจะใช้การดำเนินการดังกล่าวกับเฉพาะการดำเนินการอื่นๆ ที่ดำเนินการสำหรับคำขอเว็บเดียวกันในระยะเดียวกันเท่านั้น
ประเภท
AddRequestCookie
เพิ่มคุกกี้ลงในคำขอหรือลบล้างคุกกี้ ในกรณีที่มีคุกกี้อื่นที่มีชื่อเดียวกันอยู่แล้ว โปรดทราบว่าเราขอแนะนำให้ใช้คุกกี้ API เนื่องจากใช้การคำนวณน้อยกว่า
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: AddRequestCookie) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
คุกกี้
คุกกี้ที่จะเพิ่มลงในคำขอ ฟิลด์ต้องไม่เป็นค่าที่ไม่ได้กำหนด
AddResponseCookie
เพิ่มคุกกี้ลงในการตอบกลับหรือลบล้างคุกกี้ ในกรณีที่มีคุกกี้อื่นที่มีชื่อเดียวกันอยู่แล้ว โปรดทราบว่าเราขอแนะนำให้ใช้คุกกี้ API เนื่องจากใช้การคำนวณน้อยกว่า
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: AddResponseCookie) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
คุกกี้
คุกกี้ที่จะเพิ่มลงในการตอบกลับ ต้องระบุชื่อและค่า
AddResponseHeader
เพิ่มส่วนหัวการตอบกลับลงในการตอบกลับของคำขอเว็บนี้ เนื่องจากส่วนหัวการตอบกลับหลายรายการอาจใช้ชื่อเดียวกัน คุณจึงต้องนำส่วนหัวการตอบกลับออกก่อน แล้วจึงเพิ่มส่วนหัวการตอบกลับใหม่เพื่อแทนที่ส่วนหัวเดิม
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: AddResponseHeader) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ชื่อ
สตริง
ชื่อส่วนหัวการตอบกลับ HTTP
-
value
สตริง
ค่าส่วนหัวการตอบกลับ HTTP
CancelRequest
การดำเนินการกับเหตุการณ์แบบประกาศที่ยกเลิกคำขอเครือข่าย
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: CancelRequest) => {...}
-
อาร์กิวเมนต์
-
returns
-
EditRequestCookie
แก้ไขคุกกี้ของคำขออย่างน้อย 1 รายการ โปรดทราบว่าเราขอแนะนำให้ใช้คุกกี้ API เนื่องจากใช้การคำนวณน้อยกว่า
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: EditRequestCookie) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ตัวกรอง
กรองคุกกี้ที่จะแก้ไข ระบบจะไม่สนใจรายการที่ว่างเปล่าทั้งหมด
-
การแก้ไข
แอตทริบิวต์ที่จะลบล้างในคุกกี้ที่ตรงกับตัวกรอง ระบบจะนำแอตทริบิวต์ที่ตั้งค่าเป็นสตริงว่างเปล่าออก
EditResponseCookie
แก้ไขคุกกี้ของการตอบกลับอย่างน้อย 1 รายการ โปรดทราบว่าเราขอแนะนำให้ใช้คุกกี้ API เนื่องจากใช้การคำนวณน้อยกว่า
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: EditResponseCookie) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ตัวกรอง
กรองคุกกี้ที่จะแก้ไข ระบบจะไม่สนใจรายการที่ว่างเปล่าทั้งหมด
-
การแก้ไข
แอตทริบิวต์ที่จะลบล้างในคุกกี้ที่ตรงกับตัวกรอง ระบบจะนำแอตทริบิวต์ที่ตั้งค่าเป็นสตริงว่างเปล่าออก
FilterResponseCookie
ตัวกรองคุกกี้ในการตอบกลับ HTTP
พร็อพเพอร์ตี้
-
ageLowerBound
หมายเลข ไม่บังคับ
ขอบเขตล่างแบบรวมของอายุคุกกี้ (ระบุเป็นวินาทีหลังจากเวลาปัจจุบัน) เฉพาะคุกกี้ที่ตั้งค่าวันที่และเวลาหมดอายุเป็น "now + ageLowerBound" หรือหลังจากนั้นเท่านั้นที่จะเป็นไปตามเกณฑ์นี้ คุกกี้เซสชันไม่เป็นไปตามเกณฑ์ของตัวกรองนี้ อายุการใช้งานของคุกกี้จะคำนวณจากแอตทริบิวต์คุกกี้ "max-age" หรือ "expires" หากระบุทั้ง 2 รายการ ระบบจะใช้ "max-age" ในการคำนวณอายุของคุกกี้
-
ageUpperBound
หมายเลข ไม่บังคับ
ขอบเขตบนแบบรวมของอายุคุกกี้ (ระบุเป็นวินาทีหลังจากเวลาปัจจุบัน) เฉพาะคุกกี้ที่มีวันที่และเวลาหมดอายุอยู่ในช่วง [now, now + ageUpperBound] เท่านั้นที่จะเป็นไปตามเกณฑ์นี้ คุกกี้เซสชันและคุกกี้ที่มีวันที่และเวลาหมดอายุในอดีตไม่เป็นไปตามเกณฑ์ของตัวกรองนี้ อายุการใช้งานของคุกกี้จะคำนวณจากแอตทริบิวต์คุกกี้ "max-age" หรือ "expires" หากระบุทั้ง 2 รายการ ระบบจะใช้ "max-age" ในการคำนวณอายุของคุกกี้
-
โดเมน
สตริง ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้โดเมน
-
หมดอายุ
สตริง ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้หมดอายุ
-
httpOnly
สตริง ไม่บังคับ
การมีแอตทริบิวต์คุกกี้ HttpOnly
-
maxAge
หมายเลข ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้ Max-Age
-
ชื่อ
สตริง ไม่บังคับ
ชื่อคุกกี้
-
เส้นทาง
สตริง ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้เส้นทาง
-
ปลอดภัย
สตริง ไม่บังคับ
มีแอตทริบิวต์คุกกี้ที่ปลอดภัย
-
sessionCookie
บูลีน ไม่บังคับ
กรองคุกกี้เซสชัน คุกกี้เซสชันไม่มีอายุการใช้งานที่ระบุไว้ในแอตทริบิวต์ "max-age" หรือ "expires"
-
value
สตริง ไม่บังคับ
ค่าของคุกกี้อาจมีเครื่องหมายคำพูดคู่
HeaderFilter
กรองส่วนหัวของคำขอตามเกณฑ์ต่างๆ ระบบจะประเมินเกณฑ์หลายรายการเป็นการเชื่อมโยง
พร็อพเพอร์ตี้
-
nameContains
string | string[] ไม่บังคับ
ตรงกันหากชื่อส่วนหัวมีสตริงที่ระบุทั้งหมด
-
nameEquals
สตริง ไม่บังคับ
ตรงกันหากชื่อส่วนหัวเท่ากับสตริงที่ระบุ
-
namePrefix
สตริง ไม่บังคับ
ตรงกันหากชื่อส่วนหัวขึ้นต้นด้วยสตริงที่ระบุ
-
nameSuffix
สตริง ไม่บังคับ
ตรงกันหากชื่อส่วนหัวลงท้ายด้วยสตริงที่ระบุ
-
valueContains
string | string[] ไม่บังคับ
ตรงกันหากค่าส่วนหัวมีสตริงที่ระบุทั้งหมด
-
valueEquals
สตริง ไม่บังคับ
ตรงกันหากค่าส่วนหัวเท่ากับสตริงที่ระบุ
-
valuePrefix
สตริง ไม่บังคับ
ตรงกันหากค่าส่วนหัวขึ้นต้นด้วยสตริงที่ระบุ
-
valueSuffix
สตริง ไม่บังคับ
ตรงกันหากค่าส่วนหัวลงท้ายด้วยสตริงที่ระบุ
IgnoreRules
มาสก์กฎทั้งหมดที่ตรงกับเกณฑ์ที่ระบุ
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: IgnoreRules) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
hasTag
สตริง ไม่บังคับ
หากตั้งค่าไว้ ระบบจะไม่สนใจกฎที่มีแท็กที่ระบุ การละเว้นนี้จะไม่คงอยู่ แต่จะมีผลกับกฎและการดำเนินการของกฎในขั้นตอนคำขอเครือข่ายเดียวกันเท่านั้น โปรดทราบว่าระบบจะเรียกใช้กฎตามลำดับความสำคัญจากมากไปน้อย การดำเนินการนี้จะส่งผลต่อกฎที่มีลำดับความสำคัญต่ำกว่ากฎปัจจุบัน ระบบอาจไม่สนใจกฎที่มีลำดับความสำคัญเดียวกัน
-
lowerPriorityThan
หมายเลข ไม่บังคับ
หากตั้งค่าไว้ ระบบจะไม่สนใจกฎที่มีลำดับความสำคัญต่ำกว่าค่าที่ระบุ ขอบเขตนี้จะไม่คงอยู่ แต่จะมีผลเฉพาะกฎและการดำเนินการของกฎในขั้นตอนคำขอเครือข่ายเดียวกัน
RedirectByRegEx
เปลี่ยนเส้นทางคำขอโดยใช้นิพจน์ทั่วไปใน URL นิพจน์ทั่วไปใช้ไวยากรณ์ RE2
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RedirectByRegEx) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
จาก
สตริง
รูปแบบการจับคู่ที่อาจมีแคปเจอร์กรุ๊ป ระบบจะอ้างอิงแคปเจอร์กรุ๊ปในไวยากรณ์ Perl ($1, $2, ...) แทนไวยากรณ์ RE2 (\1, \2, ...) เพื่อให้ใกล้เคียงกับนิพจน์ทั่วไปของ JavaScript มากขึ้น
-
ถึง
สตริง
รูปแบบปลายทาง
RedirectRequest
การดำเนินการกับเหตุการณ์แบบประกาศที่เปลี่ยนเส้นทางคำขอเครือข่าย
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RedirectRequest) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
redirectUrl
สตริง
ปลายทางที่ระบบเปลี่ยนเส้นทางคำขอไป
RedirectToEmptyDocument
การดำเนินการกับเหตุการณ์แบบประกาศที่เปลี่ยนเส้นทางคำขอเครือข่ายไปยังเอกสารว่าง
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RedirectToEmptyDocument) => {...}
-
อาร์กิวเมนต์
-
returns
-
RedirectToTransparentImage
การดำเนินการของเหตุการณ์แบบประกาศที่เปลี่ยนเส้นทางคำขอเครือข่ายไปยังรูปภาพโปร่งใส
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RedirectToTransparentImage) => {...}
-
อาร์กิวเมนต์
-
returns
-
RemoveRequestCookie
นำคุกกี้ของคำขอออกอย่างน้อย 1 รายการ โปรดทราบว่าเราขอแนะนำให้ใช้คุกกี้ API เนื่องจากใช้การคำนวณน้อยกว่า
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RemoveRequestCookie) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ตัวกรอง
กรองคุกกี้ที่จะนำออก ระบบจะไม่สนใจรายการที่ว่างเปล่าทั้งหมด
RemoveRequestHeader
นำส่วนหัวของคำขอที่มีชื่อที่ระบุออก อย่าใช้ SetRequestHeader และ RemoveRequestHeader กับชื่อส่วนหัวเดียวกันในคำขอเดียวกัน ชื่อส่วนหัวของคำขอแต่ละรายการจะปรากฏเพียงครั้งเดียวในคำขอแต่ละรายการ
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RemoveRequestHeader) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ชื่อ
สตริง
ชื่อส่วนหัวของคำขอ HTTP (ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
RemoveResponseCookie
นำคุกกี้ของคำตอบออกอย่างน้อย 1 รายการ โปรดทราบว่าเราขอแนะนำให้ใช้คุกกี้ API เนื่องจากใช้การคำนวณน้อยกว่า
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RemoveResponseCookie) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ตัวกรอง
กรองคุกกี้ที่จะนำออก ระบบจะไม่สนใจรายการที่ว่างเปล่าทั้งหมด
RemoveResponseHeader
นำส่วนหัวของการตอบกลับทั้งหมดที่มีชื่อและค่าที่ระบุออก
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RemoveResponseHeader) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ชื่อ
สตริง
ชื่อส่วนหัวของคำขอ HTTP (ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
-
value
สตริง ไม่บังคับ
ค่าส่วนหัวของคำขอ HTTP (ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)
RequestCookie
ตัวกรองหรือข้อกำหนดของคุกกี้ในคำขอ HTTP
พร็อพเพอร์ตี้
-
ชื่อ
สตริง ไม่บังคับ
ชื่อคุกกี้
-
value
สตริง ไม่บังคับ
ค่าของคุกกี้อาจมีเครื่องหมายคำพูดคู่
RequestMatcher
จับคู่เหตุการณ์เครือข่ายตามเกณฑ์ต่างๆ
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: RequestMatcher) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
contentType
string[] ไม่บังคับ
ตรงกันหากประเภทสื่อ MIME ของการตอบกลับ (จากส่วนหัว Content-Type ของ HTTP) อยู่ในรายการ
-
excludeContentType
string[] ไม่บังคับ
ตรงกันหากประเภทสื่อ MIME ของการตอบกลับ (จากส่วนหัว Content-Type ของ HTTP) ไม่ได้อยู่ในรายการ
-
excludeRequestHeaders
HeaderFilter[] ไม่บังคับ
ตรงกันหากไม่มีส่วนหัวคำขอใดที่ตรงกับ HeaderFilters ใดๆ
-
excludeResponseHeaders
HeaderFilter[] ไม่บังคับ
ตรงกันหากไม่มีส่วนหัวของการตอบกลับใดที่ตรงกับ HeaderFilters ใดๆ
-
firstPartyForCookiesUrl
UrlFilter ไม่บังคับ
เลิกใช้งานแล้วระบบจะไม่สนใจตั้งแต่เวอร์ชัน 82
ตรงกันหากเป็นไปตามเงื่อนไขของ UrlFilter สำหรับ URL ของ "บุคคลที่หนึ่ง" ของคำขอ URL ของ "บุคคลที่หนึ่ง" ของคำขออาจแตกต่างจาก URL เป้าหมายของคำขอ และอธิบายสิ่งที่ถือว่าเป็น "บุคคลที่หนึ่ง" เพื่อประโยชน์ในการตรวจสอบคุกกี้ของบุคคลที่สาม
-
requestHeaders
HeaderFilter[] ไม่บังคับ
ตรงกันหากส่วนหัวคำขอตรงกับ HeaderFilters รายการใดรายการหนึ่ง
-
resourceType
ResourceType[] ไม่บังคับ
ตรงกันหากประเภทคำขอของคำขออยู่ในรายการ ระบบจะกรองคำขอที่ไม่ตรงกับประเภทใดๆ ออก
-
responseHeaders
HeaderFilter[] ไม่บังคับ
ตรงกันหากส่วนหัวการตอบกลับบางส่วนตรงกับ HeaderFilters รายการใดรายการหนึ่ง
-
เวที
Stage[] ไม่บังคับ
มีรายการสตริงที่อธิบายขั้นตอน ค่าที่ใช้ได้คือ "onBeforeRequest", "onBeforeSendHeaders", "onHeadersReceived", "onAuthRequired" หากมีแอตทริบิวต์นี้ ระบบจะจำกัดขั้นตอนที่เกี่ยวข้องให้เป็นขั้นตอนที่ระบุไว้ โปรดทราบว่าเงื่อนไขทั้งหมดจะมีผลเฉพาะในขั้นตอนที่เข้ากันได้กับแอตทริบิวต์ทั้งหมด
-
thirdPartyForCookies
บูลีน ไม่บังคับ
เลิกใช้งานแล้วไม่สนใจตั้งแต่เวอร์ชัน 87
หากตั้งค่าเป็น "จริง" ระบบจะจับคู่คำขอที่อยู่ภายใต้นโยบายคุกกี้ของบุคคลที่สาม หากตั้งค่าเป็นเท็จ ระบบจะจับคู่คำขออื่นๆ ทั้งหมด
-
URL
UrlFilter ไม่บังคับ
ตรงกันหากเงื่อนไขของ UrlFilter เป็นไปตาม URL ของคำขอ
ResponseCookie
ข้อกำหนดของคุกกี้ในการตอบกลับ HTTP
พร็อพเพอร์ตี้
-
โดเมน
สตริง ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้โดเมน
-
หมดอายุ
สตริง ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้หมดอายุ
-
httpOnly
สตริง ไม่บังคับ
การมีแอตทริบิวต์คุกกี้ HttpOnly
-
maxAge
หมายเลข ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้ Max-Age
-
ชื่อ
สตริง ไม่บังคับ
ชื่อคุกกี้
-
เส้นทาง
สตริง ไม่บังคับ
ค่าของแอตทริบิวต์คุกกี้เส้นทาง
-
ปลอดภัย
สตริง ไม่บังคับ
มีแอตทริบิวต์คุกกี้ที่ปลอดภัย
-
value
สตริง ไม่บังคับ
ค่าของคุกกี้อาจมีเครื่องหมายคำพูดคู่
SendMessageToExtension
ทริกเกอร์เหตุการณ์ declarativeWebRequest.onMessage
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: SendMessageToExtension) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ข้อความ
สตริง
ค่าที่จะส่งในแอตทริบิวต์
messageของพจนานุกรมที่ส่งไปยังตัวแฮนเดิลเหตุการณ์
SetRequestHeader
ตั้งค่าส่วนหัวของคำขอที่มีชื่อที่ระบุเป็นค่าที่ระบุ หากไม่มีส่วนหัวที่มีชื่อที่ระบุมาก่อน ระบบจะสร้างส่วนหัวใหม่ การเปรียบเทียบชื่อส่วนหัวจะไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่เสมอ ชื่อส่วนหัวของคำขอแต่ละรายการจะปรากฏเพียงครั้งเดียวในคำขอแต่ละรายการ
พร็อพเพอร์ตี้
-
เครื่องมือสร้าง
เป็นโมฆะ
ฟังก์ชัน
constructorมีลักษณะดังนี้(arg: SetRequestHeader) => {...}
-
อาร์กิวเมนต์
-
returns
-
-
ชื่อ
สตริง
ชื่อส่วนหัวของคำขอ HTTP
-
value
สตริง
ค่าส่วนหัวของคำขอ HTTP
Stage
ค่าแจกแจง
"onBeforeRequest"
"onBeforeSendHeaders"
"onHeadersReceived"
"onAuthRequired"
กิจกรรม
onMessage
chrome.declarativeWebRequest.onMessage.addListener(
callback: function,
)
ทริกเกอร์เมื่อมีการส่งข้อความผ่าน declarativeWebRequest.SendMessageToExtension จากการดำเนินการของ Declarative Web Request API
พารามิเตอร์
-
callback
ฟังก์ชัน
พารามิเตอร์
callbackมีลักษณะดังนี้(details: object) => void
-
รายละเอียด
ออบเจ็กต์
-
documentId
สตริง ไม่บังคับ
UUID ของเอกสารที่ส่งคำขอ
-
documentLifecycle
วงจรการใช้งานของเอกสาร
-
frameId
ตัวเลข
ค่า 0 บ่งชี้ว่าคำขอเกิดขึ้นในเฟรมหลัก ส่วนค่าบวกบ่งชี้รหัสของเฟรมย่อยที่คำขอเกิดขึ้น หากโหลดเอกสารของ (เฟรมย่อย) (
typeเป็นmain_frameหรือsub_frame)frameIdจะระบุรหัสของเฟรมนี้ ไม่ใช่รหัสของเฟรมด้านนอก รหัสเฟรมจะไม่ซ้ำกันภายในแท็บ -
frameType
ประเภทเฟรมที่เกิดการนำทาง
-
ข้อความ
สตริง
ข้อความที่สคริปต์การโทรส่ง
-
method
สตริง
เมธอด HTTP มาตรฐาน
-
parentDocumentId
สตริง ไม่บังคับ
UUID ของเอกสารหลักที่เป็นเจ้าของเฟรมนี้ ระบบจะไม่ตั้งค่านี้หากไม่มีองค์กรหลัก
-
parentFrameId
ตัวเลข
รหัสของเฟรมที่ครอบเฟรมซึ่งส่งคำขอ ตั้งค่าเป็น -1 หากไม่มีเฟรมหลัก
-
requestId
สตริง
รหัสของคำขอ รหัสคำขอจะไม่ซ้ำกันภายในเซสชันของเบราว์เซอร์ ด้วยเหตุนี้ จึงสามารถใช้เพื่อเชื่อมโยงเหตุการณ์ต่างๆ ของคำขอเดียวกันได้
-
เก็บพักไว้
ขั้นตอนของคำขอเครือข่ายที่ทริกเกอร์เหตุการณ์
-
tabId
ตัวเลข
รหัสของแท็บที่เกิดคำขอ ตั้งค่าเป็น -1 หากคำขอไม่เกี่ยวข้องกับแท็บ
-
timeStamp
ตัวเลข
เวลาที่ทริกเกอร์สัญญาณนี้ในหน่วยมิลลิวินาทีตั้งแต่ Epoch
-
ประเภท
วิธีใช้ทรัพยากรที่ขอ
-
URL
สตริง
-
-
onRequest
มี Declarative Event API ซึ่งประกอบด้วย addRules, removeRules และ getRules
เงื่อนไข
การดำเนินการ