“How Fugu is the Web?”的产品徽标图片

How Fugu is the Web?

扩展程序开发者工具36 用户
How Fugu is the Web?的项目媒体 2(屏幕截图)
How Fugu is the Web?的项目媒体 1(屏幕截图)
How Fugu is the Web?的项目媒体 2(屏幕截图)
How Fugu is the Web?的项目媒体 1(屏幕截图)
How Fugu is the Web?的项目媒体 1(屏幕截图)
How Fugu is the Web?的项目媒体 2(屏幕截图)

概述

An extension to shine light on the Project Fugu 🐡 APIs web apps want to use.

How it works API data The raw data for the different Project Fugu 🐡 APIs is curated in a spreadsheet, which is then turned into JavaScript, so keeping the list of APIs updated is hopefully a straightforward task. API detection The extension monitors the requests a page makes via the chrome.webRequest.onBeforeRequest.addListener() API. Each response body, grouped by main frame, JavaScript, and Web App Manifest response bodies, is then run through a set of regular expressions like /navigator\.hid\.requestDevice\s*\(/g to determine if the code hints at a Project Fugu 🐡 API potentially being used. Browser support detection Most Project Fugu 🐡 APIs are easily feature-detectable by checking for the existence of interfaces or properties, for example, as in 'BarcodeDetector' in window. Other APIs require a ServiceWorkerRegistration, but luckily the popup window in Manifest V3 extensions uses a service worker, so it can be used via an IIFE that can be run in the client or the service worker. An example is (async () => 'periodicSync' in (await navigator.serviceWorker?.ready || self.registration))(). The support categories are listed below: ✔️ Supported by your browser. 🚫 Not supported by your browser. 🤷 Support unknown for your browser. (The only way to know would be user-agent sniffing.) Deep-linking The extension makes use of Text Fragment URLs to deep-link to the occurrence of a detected API, for example https://airhorner.com/scripts/main.min.js#:~:text=navigator.setAppBadge(. For main frame documents, the source code gets rendered in a helper HTML page controlled by the extension, since it is impossible to link to view-source: protocol links. Limitations • The chrome.webRequest.onBeforeRequest.addListener() API unfortunately does not "see" requests that are handled by a service worker (crbug.com/766433). There are three possible workarounds for this: - Hard-reload via ⌘/ctrl+shift+r. - Open DevTools and check the Bypass for network checkbox in the Service Worker section of the Application tab. - Clear storage in the Storage section of the Application tab. • The extension only does static code analysis, that is, there is no guarantee that the app actually uses the code snippet where a Project Fugu 🐡 API was detected. • Heavily minified code will not be detected. For example, if an app minifies navigator.clipboard.write() to const nav = navigator; nav.clipboard.write(), the extension will not detect this. License Apache 2.0.

0 星(5 星制)无评分

详细了解结果和评价。

详情

  • 版本
    1.24.0
  • 上次更新日期
    2025年12月10日
  • 提供方
    Thomas Steiner
  • 大小
    125KiB
  • 语言
    English
  • 开发者
    Thomas Steiner
    Neanderstr. 3 Hamburg 20459 Germany
    邮箱
    steiner.thomas@gmail.com
  • 非交易者
    该开发者尚未将自己标识为交易者。欧盟地区消费者须知:消费者权利可能不适用于您与该开发者达成的合约。

隐私权

管理扩展程序并了解它们在组织中的使用情况
该开发者已披露,此产品不会收集或使用您的数据。 如需了解详情,请参阅开发者的privacy policy。

该开发者已声明,您的数据:

  • 不会因未获批准的用途出售给第三方
  • 不会为实现与产品核心功能无关的目的而使用或转移
  • 不会为确定信用度或放贷目的而使用或转移

支持

若有任何疑问、建议或问题,请在桌面浏览器中打开此页面

Google 应用