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

React Native结合Strapi发重置密码邮件时href自定义协议链接无法点击

问题原因

该问题核心是邮件客户端/服务商拦截自定义URL协议导致的,你观察到的href=3D"xxx"属于正常现象,不是URL格式错误:

  • 邮件传输过程中会用quoted-printable编码处理特殊字符,3D就是=符号的编码形式,客户端解析的时候会自动还原,不会影响链接的正常识别。
  • 几乎所有主流移动端邮件客户端(包括iOS自带邮件、安卓自带邮件、Gmail、QQ邮箱等)为了防范安全风险,都会默认拦截非通用协议的链接,仅允许http、https、mailto、tel这类公开通用协议的链接可点击,你使用的自定义app://协议不在白名单内,自然会被去掉可点击属性,显示为普通文本。

解决方案

推荐两种兼容性较高的替代方案:

  1. 使用HTTPS跳转页过渡
    把邮件内的重置链接替换为你的业务服务的HTTPS地址,示例格式:https://你的业务域名/reset-password?token=<%= TOKEN %>,用户点击链接后打开的跳转页可做两层逻辑:
    • 移动端访问时,尝试唤起你的App的自定义协议,唤起失败则引导用户下载安装App
    • 桌面端访问时,可引导用户用移动端操作,或直接提供网页端重置密码的入口
  2. 配置系统级关联链接
    针对iOS配置通用链接(Universal Links)、针对安卓配置应用链接(App Links),这两种方案都是用HTTPS域名和你的App做官方关联,生成的重置链接本身就是HTTPS格式,不会被邮件客户端拦截,用户点击后会直接跳转到你的App内的重置密码页面,体验更流畅。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 10:39:01