Stripe Webhook Basic认证URL用户名含@符号该如何转义?
解决方案
对用户名中的特殊符号做URL编码即可解决地址解析错误问题。
具体操作
@符号对应的URL编码值为%40,你示例中的用户名user1@myapp-1awjn转义后为user1%40myapp-1awjn- 直接使用转义后的用户名构造webhook地址即可,格式示例:
https://user1%40myapp-1awjn:你的接口密码@myAPI.com
原理解释
URL规范中
@属于保留字符,作用是分隔认证信息段和域名段。直接填写带@的原始用户名会被地址解析器误认为认证段已经结束,提前匹配域名导致解析失败。
完成URL编码后,Stripe的地址解析器会正确识别%40属于用户名的组成部分,不会提前截断。后续生成Authorization请求头时,Stripe会自动把转义后的内容还原为原始的@符号再做Base64编码,不会影响你接口侧的常规Basic认证校验,不需要在接口侧做额外解码操作。
补充注意项
- 如果密码中包含
/、?、#、:这类URL保留字符,也需要做对应URL编码后再填入地址 - 无需手动修改请求头配置,Stripe原生支持处理URL编码后的认证信息
内容的提问来源于stack exchange,提问作者William Pham
相关产品推荐
相关产品推荐

