ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

fast-foundation Anchor.referrerpolicy 属性:FAST 锚点组件引荐来源策略(Referrer Policy)的声明与使用

fast-foundation Anchor.referrerpolicy 属性:FAST 锚点组件引荐来源策略(Referrer Policy)的声明与使用 前端UI组件【免费下载链接】fastThe adaptive interface system for modern web experiences.项目地址https://gitcode.com/gh_mirrors/fa/fast点击查看免费下载导读本文聚焦 FASTAdaptive UI体系下microsoft/fast-foundation中Anchor组件的referrerpolicy属性它直接对应原生a元素的同名 HTML 属性用于精确控制浏览器在跳转链接时向目标服务器发送的Referer头信息量是页面隐私与安全治理的关键开关。读完本文你将掌握该属性的类型签名、合法取值、在fast-anchor组件中的实际用法以及它在 FAST 构建工具链Rust 转换器中属性名映射的底层实现。属性定义与类型签名根据 API Documenter 生成的参考文档fast-foundation.anchor.referrerpolicy.mdAnchor.referrerpolicy的声明如下referrerpolicy: string;Remarks该属性映射的 HTML 属性为referrerpolicy语义与原生a元素 的referrerpolicy属性完全一致。也就是说在 FAST 的Anchor组件上你可以像使用原生 HTML 一样声明referrerpolicy浏览器会据此决定发出请求时Referer头的携带策略。在 Anchor 类属性体系中的位置Anchor.referrerpolicy属于 Anchor 类 中面向超链接行为的一组字符串属性之一。完整属性集包括属性类型说明hrefstring超链接引用的 URLhreflangstring提示被引用资源的语言pingstring点击链接时向哪些 URL 发送 ping 请求referrerpolicystring控制发送Referer信息的策略本文主题relstring当前文档与被链接资源的关系downloadstring提示用户保存链接指向的 URLtarget_self \| _blank \| _parent \| _top链接打开方式typestring被链接资源的 MIME 类型controlHTMLAnchorElement对内部根锚点元素的引用可以看到referrerpolicy与其他超链接语义属性一样被设计为public string字段并通过同名 HTML 属性attribute暴露给使用方遵循 FAST 组件attribute ↔ property的标准映射约定。referrerpolicy 的语义控制 Referer 泄漏Referer头会向目标站点暴露你来自哪个页面这一信息既可用于正常的来源统计、防盗链也可能成为隐私泄露渠道。referrerpolicy正是用来约束这一行为的声明式开关。FAST 的Anchor.referrerpolicy接受的值遵循 HTML 标准WHATWG/W3C定义的枚举语义属性的 TypeScript 类型声明为string运行时由浏览器对取值进行解释与校验。标准取值如下取值行为no-referrer完全不发送Referer头隐私保护最强no-referrer-when-downgrade默认策略从 HTTPS 跳转到 HTTP 时不发送同安全级别及升级时发送origin仅发送源协议 域名 端口不发送完整路径origin-when-cross-origin同源请求发送完整 URL跨源请求仅发送源same-origin仅同源请求发送完整Referer跨源请求不发送strict-origin仅发送源且从 HTTPS 降级到 HTTP 时不发送strict-origin-when-cross-origin同源发送完整 URL跨源仅发送源HTTPS→HTTP 降级时不发送unsafe-url无条件发送完整 URL含查询字符串隐私风险最高不建议使用说明现代浏览器的默认行为等价于no-referrer-when-downgrade。referrerpolicy未显式设置时浏览器按默认策略处理FAST 组件不会额外改写这一语义。在 fast-anchor 组件中的实际使用referrerpolicy以同名 HTML 属性形式直接用在fast-anchor上例如声明一个不携带 Referer的隐私安全链接fast-anchor hrefhttps://example.com referrerpolicyno-referrer隐私安全链接/fast-anchor对于站内链接可以显式指定同源策略防止跨域泄露路径信息fast-anchor href/docs/guide referrerpolicysame-origin阅读指南/fast-anchorfast-anchor是 FAST 对原生a元素的 Web Component 实现。根据组件文档fast-anchor.mdx中的 API 表格referrerpolicy作为public string字段、并以同名属性暴露同时在fast-breadcrumb面包屑导航等组合组件中作为Anchor派生属性继承使用。注册组件后使用在项目入口通过设计系统注册fast-anchorimport { provideFASTDesignSystem, fastAnchor } from microsoft/fast-components; provideFASTDesignSystem() .register( fastAnchor() );注册完成后即可在模板中声明referrerpolicy。从源码结构看该属性在模板中最终被绑定到组件内部渲染出的HTMLAnchorElement即controlpart上行为与原生a一致包含焦点的委托管理shadowOptions.delegatesFocus: true。自定义组件时保持属性声明如果你用Anchor.compose基于自己的模板与样式派生自定义锚点组件referrerpolicy等属性依然由基类Anchor提供只需在自定义模板中确保将其转发给内部a元素import { Anchor, anchorTemplate as template, } from microsoft/fast-foundation; import { anchorStyles as styles } from ./my-anchor.styles; export const myAnchor Anchor.compose({ baseName: anchor, template, styles, shadowOptions: { delegatesFocus: true, }, });底层实现属性名映射与转换器佐证referrerpolicy使用小写连字符形式命名而在 FAST 生态的构建/转换链路中属性名需要与标准 DOM APIHTMLAnchorElement.referrerPolicycamelCase对应。仓库中的 Rust 实现提供了直接证据在 attribute_lookup.rs 的属性查找表中存在如下映射referrerpolicy Some(referrerPolicy),这条映射表明FAST 的构建工具链microsoft-fast-buildcrate在处理模板/标记语言时会将 HTML 风格的小写属性名referrerpolicy规范化为 DOM 属性/API 所需的 camelCase 形式referrerPolicy。这也印证了组件上声明的referrerpolicy最终作用于内部原生锚点元素对应 DOM 属性的机制。隐私与安全最佳实践结合referrerpolicy的语义在实际应用中建议外部链接且不希望泄露来源路径使用no-referrer或origin避免把包含会话标识的完整 URL 发送给第三方。站内导航使用same-origin或保持默认no-referrer-when-downgrade兼顾统计与隐私。纯展示性外链配合relnoopener与target_blank使用形成完整的链接安全组合referrerpolicy管的是Referer头而rel、target管的是新窗口与window.opener风险两者互补。避免unsafe-url它会将包含查询字符串的完整 URL 无条件发给所有目标站点隐私风险最高。小结Anchor.referrerpolicy是 FAST 对原生a元素引荐来源策略的完整封装类型为string同名 HTML 属性直出语义与 HTML 标准一致在fast-anchor及派生组件如fast-breadcrumb中开箱即用在构建链路中由microsoft-fast-build的attribute_lookup完成referrerpolicy → referrerPolicy的规范化映射。掌握它即可在 FAST 应用中精确管控链接的 Referer 泄漏边界为页面隐私与安全加固提供细粒度的声明式控制。赞分享前端UI组件【免费下载链接】fastThe adaptive interface system for modern web experiences.项目地址https://gitcode.com/gh_mirrors/fa/fast点击查看免费下载相关推荐使用 fastButton 注册与定制 FAST Button 组件fast-components 中的 Foundation 按钮解析使用 fastButton 注册与定制 FAST Button 组件fast components 中的 Foundation 按钮解析 导读 fastBut前端UI组件FAST Element 的 attr() 装饰器为 Web 组件声明式绑定 HTML 属性FAST Element 的 attr 装饰器为 Web 组件声明式绑定 HTML 属性 microsoft/fast element 提供的 attr 函前端UI组件使用 scaleColorLight 定制 FAST 调色板浅色端锚点色ColorPaletteConfig 属性详解使用 scaleColorLight 定制 FAST 调色板浅色端锚点色ColorPaletteConfig 属性详解 scaleColorLight 是 前端UI组件上一篇如何用Timeline-View打造专业级订单追踪系统从入门到精通的完整指南下一篇终极对比Zelda64Recomp静态重编译项目与官方模拟器的技术优势解析创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表