onBeforeRequest, onBeforeSendHeaders, onHeadersReceived, onAuthRequired のイベントはキャンセル可能
3 つ目の引数に blocking を指定してれば 返すオブジェクトでリクエストを改変できる

{cancel: true} を返せばリクエストを防げる
POST をブロックする例
chrome.webRequest.onBeforeRequest.addListener(details => {
if(details.method === "POST"){
return {cancel: true}
}
}, {urls: ["<all_urls>"]}, ["blocking"])

これだと キャンセルされたエラー画面が表示される

完全にキャンセルして何もおきないようにするなら 「javascript:void 0」 にリダイレクトさせる

chrome.webRequest.onBeforeRequest.addListener(details => {
if(details.method === "POST"){
return {redirectUrl: "javascript:void 0"}
}
}, {urls: ["<all_urls>"]}, ["blocking"])