📜  HTTP 标头 |功能政策

📅  最后修改于: 2022-05-13 01:56:22.993000             🧑  作者: Mango

HTTP 标头 |功能政策

HTTP Feature-Policy 是响应类型的标头。如今,我们的大多数 Web 浏览器都可以使用某些功能和 API 为 Web 用户提供额外的体验。 Feature-Policy是一个 HTTP 标头,可以允许网站所有者打开或关闭某些 Web 浏览器功能和 API。这种影响是对主机网站和嵌入其中的页面造成的。要使用这个 HTTP 标头,我们可以编辑.htaccess文件或服务器配置文件。需要注意的重要一点是,此标头与网站的安全性无关,而是为网站用户提供良好和流畅的体验。

句法:

Feature-Policy:   

指令:此标头接受 2 个指令,但 on 指令可以与其他指令一起重定向,如下所述:

  • :它对应于我们如何使用不同的特性和 API 的说明。
  • :它是一个列表,指示如何使用浏览器功能。

该指令可以重定向到以下任何指令:

  • accelerometer :用于获取有关设备加速度的信息
  • ambient-light-sensor :用于获取周围环境是否有足够光线的信息
  • autoplay :用于控制媒体自动播放设置。主要用于音频和视频元素
  • 电池:用于使用电池状态 API 获取电池状态
  • camera :用于通过设备的摄像头控制视频输入
  • display-capture : 通过屏幕截图捕获屏幕内容
  • document-domain :用于通过设置或取消设置来控制当前文档的文档域
  • encrypted-media :用于控制加密媒体扩展 API (EME)
  • fullscreen :用于控制全屏访问
  • geolocation :用于使用地理定位API 在地图上显示用户的位置
  • 陀螺仪:用于获取有关设备访问设备陀螺仪方向的信息
  • layout-animations :用于显示布局动画和过渡
  • legacy-image-formats :以旧格式显示图像
  • 磁力计:用于获取有关设备磁方向的信息
  • 麦克风:用于通过设备的麦克风进行音频输入
  • midi : 用于访问 Web MIDI API
  • oversized-images :用于显示和下载超大尺寸的图像
  • 付款:使用付款请求 API 控制所有与付款相关的活动
  • 画中画:允许视频以画中画模式播放
  • publickey-credentials-get :使用 Web 身份验证 API 并检索公钥凭据
  • sync-xhr :用于制作同步XMLHTTPRequest
  • usb :控制用于 USB 媒体访问的WebUSB API
  • wake-lock :使用 Wake Lock API 通知设备不要进入省电模式
  • xr-spatial-tracking :用于通过使用WebXR设备 API 与WebXR会话进行交互

例子

  • 考虑一个使用麦克风和摄像头进行视频会议的网站。因此,这种情况下的 HTTP Feature 标头将是 -
Feature-Policy: microphone 'self'; camera 'self'
  • 让我们考虑另一个示例,其中 Web 应用程序需要知道您的位置才能为您提供一些特定的服务集。这些服务可以包括但不限于出租车预订、送餐等。因此,这种情况下的 HTTP Feature 标头可以是——
Feature-Policy: geolocation 'self'

支持的浏览器: HTTP header Feature-Policy支持的浏览器如下:

  • 谷歌浏览器
  • 微软边缘
  • 火狐浏览器
  • 苹果浏览器