撇号资产:从资产链中删除
apostrophe-assets: Remove from asset chain
我想构建一个撇号模块并在 npm 上发布它。通过暂时删除设置 cookie 的 js 资产(如 Google Analytics)或使用 "personal"-IP-信息(如 Google 字体发送请求,这将有助于遵守欧洲 GDPR,是的奇怪)。
删除一个脚本的选项可能如下所示:
{
path: '/path/to/script',
type: 'tracking'
}
我认为最安全的方法是在服务器上从 apostrophe-assets
的资产链中删除脚本。
但是我被困在这里了。如果用户允许这些脚本,我如何删除特定脚本并再次添加它们?
目前是否可行,或者我们是否需要增强 apostrophe-assets
?
目前,您不能对资产的推送进行例外处理,当然除了用户与匿名的区别,这可以避免将大量额外代码推送给不会使用 Apostrophe 进行编辑的人。
但是,您会注意到我们推送到浏览器的代码几乎完全由库组成,这些库在被通过 apos.push.browserCall 推送到那里的 javascript 调用调用之前不会执行任何操作,或者req.browserCall.
第二种方法非常强大,因为它意味着您可以根据 req.session 或 [=21= 的值决定进行或不进行 javascript 调用].
简而言之:您可以将所有代码推送给拒绝使用它的用户 — 只要您不调用它。定义一个库与调用它的每个函数不是一回事。
我想构建一个撇号模块并在 npm 上发布它。通过暂时删除设置 cookie 的 js 资产(如 Google Analytics)或使用 "personal"-IP-信息(如 Google 字体发送请求,这将有助于遵守欧洲 GDPR,是的奇怪)。
删除一个脚本的选项可能如下所示:
{
path: '/path/to/script',
type: 'tracking'
}
我认为最安全的方法是在服务器上从 apostrophe-assets
的资产链中删除脚本。
但是我被困在这里了。如果用户允许这些脚本,我如何删除特定脚本并再次添加它们?
目前是否可行,或者我们是否需要增强 apostrophe-assets
?
目前,您不能对资产的推送进行例外处理,当然除了用户与匿名的区别,这可以避免将大量额外代码推送给不会使用 Apostrophe 进行编辑的人。
但是,您会注意到我们推送到浏览器的代码几乎完全由库组成,这些库在被通过 apos.push.browserCall 推送到那里的 javascript 调用调用之前不会执行任何操作,或者req.browserCall.
第二种方法非常强大,因为它意味着您可以根据 req.session 或 [=21= 的值决定进行或不进行 javascript 调用].
简而言之:您可以将所有代码推送给拒绝使用它的用户 — 只要您不调用它。定义一个库与调用它的每个函数不是一回事。