当前位置:   article > 正文

在TP 钱包中DApp 绑定团队邀请关系不生效,技术如何解决?_tp钱包

tp钱包


TP 钱包无法通过分享链接无法绑定团队邀请关系怎么办?

分析发现,造成这个问题的原因是TP钱包会自动修改你的分享链接,添加 UTM 来源参数。如何避免 UTM 来源参数影响?或者说怎么修改代码来忽略这些参数?

举个例子:
带utm参数的链接:https://xxx.com/?utm_source=tokenpocket#/?code=12345
不带utm参数的链接:https://xxx.com/#/?code=12345

其实,可以使用JavaScript代码来去掉URL中的utm参数,具体步骤如下:

  1. 解析URL对象:首先,我们需要使用new URL(url)方法解析URL对象。这个方法可以把一个URL字符串解析成一个URL对象,我们可以从这个对象中获取到URL的各个部分。

  2. 获取查询参数:URL对象有一个searchParams属性,这个属性是一个URLSearchParams对象,用于获取URL中的查询参数。我们需要从这个对象中获取所有的参数。

  3. 删除utm参数:我们可以使用searchParams.delete(key)方法删除查询参数中所有以"utm_"开头的参数。其中,key是参数名,表示要删除的参数名。

  4. 重新构建URL:最后,我们使用toString()方法重新构建URL对象,并返回这个新的URL字符串。

下面是完整的JavaScript代码,我添加了注释来帮助理解:

  1. function removeUtmParamsFromUrl(url) {
  2. // 创建URL对象
  3. var urlObject = new URL(url);
  4. // 获取查询参数
  5. var searchParams = urlObject.searchParams;
  6. // 遍历所有参数,删除以"utm_"开头的参数
  7. for (var key of searchParams.keys()) {
  8. if (key.startsWith('utm_')) {
  9. searchParams.delete(key);
  10. }
  11. }
  12. // 重新构建URL,并返回
  13. return urlObject.toString();
  14. }

使用时,直接调用这个函数即可,例如:

  1. var urlWithUtm = "https://xxx.com/?utm_source=tokenpocket#/?code=12345";
  2. var urlWithoutUtm = removeUtmParamsFromUrl(urlWithUtm);
  3. console.log(urlWithoutUtm); // 输出:https://xxx.com/#/?code=12345

以上代码会将urlWithUtm中的utm参数去掉,生成新的URL字符串urlWithoutUtm,并打印输出。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/861576
推荐阅读
相关标签
  

闽ICP备14008679号