使用 Angular 的 Stripe API 的 CORS 问题
Posted
技术标签:
【中文标题】使用 Angular 的 Stripe API 的 CORS 问题【英文标题】:CORS Issue with Stripe API using Angular 【发布时间】:2017-02-18 01:33:18 【问题描述】:我是 Stripe API 和 CORS 概念的新手。 我基本上从 Angular 向我的 Node js 服务器发送 POST 请求。客户端来源与服务器目的地不同,因此我在服务器端实现了 CORS。使用 Chrome 上的网络选项卡,我可以看到预检请求正常,然后实际请求失败。我实际上不知道它出了什么问题。有人可以给我一些建议或解释我在这里缺少什么吗?提前谢谢你
预检请求(选项)
实际请求 (POST)
客户端(角度)
服务器端(Node JS)- 续
服务器端(节点 JS)
【问题讨论】:
您正在发送一个 dom 元素作为数据。这是非常错误的。问题与 CORS 无关,而是处理实际帖子 这种错误表明您的服务器后处理程序正在崩溃。从控制台开始,在 post 处理程序中记录请求正文,然后从那里开始。 @charlietfl 的建议可能是罪魁祸首 - 您的服务器可能会因这些数据而窒息 您收到 503 错误,因此这是服务器端错误(可能是由于您的请求内容所致),与 CORS 无关(如果是,则甚至不会到达服务器)。似乎也与 Stripe 没有太大关系。 【参考方案1】:如何设置域?
您是否使用其他 HTTP 服务器作为代理?
请检查节点是否正在运行,如果是,请检查您的 HTTP 服务器是否也在运行。
可能您的节点已崩溃或没有运行。
参考this答案
您可以做的其他事情是尝试使用localhost:XXXX/path
或 Postman 直接访问 URL,然后查看服务器是否响应。
另外,我看到您的 content-type
是 html。这是正确的还是应该是application/json
?我这么说是因为你说飞行前进行得很好。这是 CORS 请求的一个已知问题
【讨论】:
OPTIONS 请求成功,所以服务器可用 试试关于内容类型的建议。以上是关于使用 Angular 的 Stripe API 的 CORS 问题的主要内容,如果未能解决你的问题,请参考以下文章
如何在 IOS 中使用 STRIPE API 创建 STRIPE 客户?
我可以在不使用 Stripe Card Element 的情况下使用 Stripe api