如何在Stripe应用中添加localhost作为redirect_uri?
解决Stripe OAuth测试环境localhost HTTPS报错问题
核心矛盾:Stripe的
stripe-app.json(应用manifest)对所有URI强制要求HTTPS,哪怕是测试环境;但OAuth测试流程允许使用http://localhost作为redirect_uri,不过这个HTTP地址不能出现在manifest里。具体修复步骤:
- 移除manifest里的HTTP localhost地址:把
stripe-app.json中的http://localhost:3000/api/stripe/install删除,替换为一个HTTPS地址。如果需要本地测试,可以用ngrok这类工具生成HTTPS映射(比如https://abc123.ngrok.io/api/stripe/install),把这个HTTPS地址加到manifest里。 - 保留OAuth设置中的HTTP localhost地址:继续在Stripe Dashboard的「引导选项」页面(测试环境)保留
http://localhost:3000/api/stripe/install,这是测试OAuth流程时允许的。 - 测试链接正常使用:构造OAuth测试链接时,依然使用
redirect_uri=http://localhost:3000/api/stripe/install参数,这个参数不需要和manifest里的地址一致,Stripe测试环境会认可这个HTTP地址。
- 移除manifest里的HTTP localhost地址:把
验证逻辑:
- manifest的URI是用于应用发布、Stripe平台识别的官方回调地址,必须HTTPS;
- OAuth测试时的redirect_uri是临时本地调试用的,只需要在Dashboard的OAuth设置中配置即可,不受manifest的HTTPS限制。
内容的提问来源于stack exchange,提问作者Visrut
相关产品推荐
相关产品推荐

