node开发接口POST接口时遇到, 在开发环境没有问题, 在线上服务器中出现的问题:
1. 应在处理POST请求的时候, 同时处理一下OPTIONS请求, 否则 method === 'OPTIONS' 的请求就没有命中路由,只能返回404
处理之后如下图, 没有404 请求了
2. 在 app.js 中设置 响应头的 Access-Control-Allow-Headers ,主要是 Content-Type 字段
res.setHeader('Access-Control-Allow-Headers','Content-Type,Access-Control-Allow-Headers,Authorization,X-Requested-With')
响应首部 Access-Control-Allow-Headers
用于 preflight request (预检请求)中,列出了将会在正式请求的 Access-Control-Expose-Headers
字段中出现的首部信息。
引用: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Access-Control-Allow-Headers