This is an automated email from the ASF dual-hosted git repository.
sebb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git
The following commit(s) were added to refs/heads/master by this push:
new c5563d88 Handle CSP error messages
c5563d88 is described below
commit c5563d88e3faa410baea8d3b7be7e8dd5cfbeadc
Author: Sebb <[email protected]>
AuthorDate: Sat Feb 22 14:13:52 2025 +0000
Handle CSP error messages
---
tools/scan-page.js | 3 +++
www/members/page-scanner.cgi | 16 ++++++++++------
2 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/tools/scan-page.js b/tools/scan-page.js
index 4b10bc1c..7eaf9c72 100755
--- a/tools/scan-page.js
+++ b/tools/scan-page.js
@@ -37,6 +37,9 @@ function getHost(url) {
const browser = await puppeteer.launch({headless: "old", executablePath:
'/opt/google/chrome/chrome'});
const page = await browser.newPage();
await page.setRequestInterception(true);
+ // capture CSP messages
+ page.on('console', message =>
+ console.log(`${message.type().toUpperCase()} ${message.text()}`))
page.on('request', (interceptedRequest) => {
// already handled?
if (interceptedRequest.isInterceptResolutionHandled()) return;
diff --git a/www/members/page-scanner.cgi b/www/members/page-scanner.cgi
index 5aba8148..729e0608 100755
--- a/www/members/page-scanner.cgi
+++ b/www/members/page-scanner.cgi
@@ -51,13 +51,17 @@ if url
puts "Top-level references:"
end
extras = Hash.new {|h,k| h[k] = Hash.new}
- out.split("\n").each do |url|
- p1, p2 = url.split(DIVIDER)
- if p2
- extras[p2][p1]=1
- else
- print ASFDOMAIN.asfurl?(url) ? 'OK ' : 'NO '
+ out.split(%r{\n+}).each do |url|
+ if url.start_with? 'ERROR' # console error message (e.g. CSP)
puts url
+ else
+ p1, p2 = url.split(DIVIDER)
+ if p2
+ extras[p2][p1]=1
+ else
+ print ASFDOMAIN.asfurl?(url) ? 'OK ' : 'NO '
+ puts url
+ end
end
end
if extras.size > 0