You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为自定义分享链接http://action_share配置目标跳转规则

可行实现方案

以下方案均不需要修改现有App端的URL识别逻辑,可直接落地:

  • 服务端/CDN路由分流(改造成本最低)
    在你官网的服务端、CDN或网关配置层新增一条路由匹配规则,对所有访问http://action_share的请求做UA识别:
    • 若请求UA包含你自有App内置WebView的专属标识,直接返回204无内容状态,不做任何跳转,让App正常拦截链接触发原生分享逻辑
    • 若请求UA为普通移动端/桌面端浏览器,直接返回302重定向,跳转到你网站内预设的分享对应页面即可
  • 前端全局拦截(无需改动服务端配置)
    在官网的全局公共JS脚本最前面加入点击事件监听,拦截所有指向http://action_share的链接点击行为,参考代码如下:
    document.addEventListener('click', (e) => {
      const targetLink = e.target.closest('a')
      if (targetLink?.href === 'http://action_share') {
        // 替换为你自己App的WebView专属UA特征
        const isAppEnv = /Your-App-UA-Keyword/.test(navigator.userAgent)
        if (!isAppEnv) {
          // 阻止默认跳转到无效地址的行为
          e.preventDefault()
          // 两种网页端处理逻辑可按需二选一:
          // 1. 跳转到站内分享落地页
          window.location.href = '/your-site-share-page'
          // 2. 直接唤起网页端自定义分享弹窗
          // openWebShareModal()
        }
      }
    }, true)
    
    第三个参数传true用事件捕获模式,可以保证拦截逻辑最先触发,不会出现先跳无效地址再回退的闪烁问题。
  • 长期规范优化建议
    后续这类端侧自定义动作链接,建议统一使用你自有官网域名下的专属路径,比如https://your-official-site.com/action/share,天然不存在无效地址问题:App端只需拦截该路径触发原生分享,网页端可直接将该路径配置为分享落地页,两端逻辑天然兼容,不需要额外做分流判断。

注意:如果选择前端拦截方案,记得将脚本放在页面<head>标签内最优先加载的位置,避免页面其他脚本干扰拦截逻辑。

内容的提问来源于stack exchange,提问作者Emmanuel Tola

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 23:21:49