gpt4 book ai didi

javascript - 用于 Google Analytics 的 Javscriptencode Url 路径

转载 作者:行者123 更新时间:2023-11-29 15:42:14 26 4
gpt4 key购买 nike

我尝试将参数 _trackPageview 传递给 Google Analytics。

我现在用

_gaq.push(['_trackPageview', <%=AntiXss.JavaScriptEncode(Url.RequestContext.HttpContext.Request.Path ) %> ])

“/Home/Index”的结果 Hml 是:

  _gaq.push(['_trackPageview', '\x2fHome\x2fIndex' ]);

我应该如何处理正斜杠? "\x2"会在 Google Analytics 中正常显示吗?还是将\x2 替换为正斜杠?

_gaq.push(['_trackPageview', <%=AntiXss.JavaScriptEncode(Url.RequestContext.HttpContext.Request.Path).Replace("\x2","/") %> ])

编辑:

我不能在没有路径参数的情况下使用 _gaq.push(['_trackPageview']); 因为原始路径包含我不想跟踪的语言(/de/home/index 需要被跟踪为/home/index )

最佳答案

您实际上不需要 _trackPageview 的第二个参数。默认情况下,它将记录当前 url(包括查询参数)。任何给定页面上的 url 都是从 document.location 中收集/获取的。

其他解决方案:

  • 您已经提到的替换解决方案实际上已经足够好了。
  • 将\x2f 留在路径中,它不会伤害您的眼睛/大脑以外的任何东西。
  • 您能否使用 document.locationdocument.location.pathname 在纯 javascript 中执行此操作?我猜 URL 的查询或哈希部分是您唯一需要担心的 XSS 攻击。
  • 转义路径而不是通过将其包装在字符串中并转义引号来对其进行编码。您也可以去掉任何引号。
  • 不要对路径进行编码,它很可能没问题(除非它未经清理并且来自您的用户数据);而只是对查询和哈希进行编码。

关于javascript - 用于 Google Analytics 的 Javscriptencode Url 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17490195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com