请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

前端发送ajax POST请求 报错,postman没问题

前端原生js发送ajax post请求
![图片描述

图片描述

图片描述

图片描述

处理了options也不行,postman什么都不用处理都可以发送。。。

已解决

是options预请求的跨域问题,在nodejs中把options跨域问题解决后还是出错是因为,在options跨域后,前端Ajax设置请求头的contentType只能是application/x-www-form-urlencoded,multipart/form-data,text/plain三种格式之一,把Ajax请求头设置contentType为application/x-www-form-urlencoded后就正常执行了。


在正式跨域的请求前,浏览器会根据需要,发起一个“PreFlight”(也就是Option请求),用来让服务端返回允许的方法(如get、post),被跨域访问的Origin(来源,或者域),还有是否需要Credentials(认证信息)
三种场景:

如果跨域的请求是Simple Request(简单请求 ),则不会触发“PreFlight”。Mozilla对于简单请求的要求是:
以下三项必须都成立:

只能是Get、Head、Post方法
除了浏览器自己在Http头上加的信息(如Connection、User-Agent),开发者只能加这几个:Accept、Accept-Language、Content-Type、。。。。
Content-Type只能取这几个值:
application/x-www-form-urlencoded
multipart/form-data
text/plain

正在回答 回答被采纳积分+3

2回答

双越 2021-07-25 12:49:03

提示跨域了。

看你代码截图,是设置了允许跨于,但不知道是否真正执行了这几行  res.setHeader 的代码。

如果确定执行了,你可以下载讲师代码,运行一下,然后对比看看啥区别。

0 回复 有任何疑惑可以回复我~
  • 提问者 慕丝4001486 #1
    👌,谢谢
    回复 有任何疑惑可以回复我~ 2021-07-25 14:22:05
  • 提问者 慕丝4001486 #2
    已解决,是options预请求的跨域问题,在nodejs中把options跨域问题解决后还是出错是因为,在options跨域后,前端Ajax设置请求头的contentType只能是application/x-www-form-urlencoded,multipart/form-data,text/plain三种格式之一,我把Ajax请求头设置contentType为application/x-www-form-urlencoded后就正常执行了。
    
    
    在正式跨域的请求前,浏览器会根据需要,发起一个“PreFlight”(也就是Option请求),用来让服务端返回允许的方法(如get、post),被跨域访问的Origin(来源,或者域),还有是否需要Credentials(认证信息)
    三种场景:
    
    如果跨域的请求是Simple Request(简单请求 ),则不会触发“PreFlight”。Mozilla对于简单请求的要求是:
    以下三项必须都成立:
    
    只能是Get、Head、Post方法
    除了浏览器自己在Http头上加的信息(如Connection、User-Agent),开发者只能加这几个:Accept、Accept-Language、Content-Type、。。。。
    Content-Type只能取这几个值:
    application/x-www-form-urlencoded
    multipart/form-data
    text/plain
    回复 有任何疑惑可以回复我~ 2021-07-25 15:36:39
双越 2021-07-25 09:07:23

看下 chrome http 请求的截图,返回什么

0 回复 有任何疑惑可以回复我~
  • 提问者 慕丝4001486 #1
    /Users/yutianxiang/Desktop/WeChat854eb06a29d307ae370bff15f3e8d5d5.png
    回复 有任何疑惑可以回复我~ 2021-07-25 09:16:24
  • 提问者 慕丝4001486 #2
    已上传图片
    回复 有任何疑惑可以回复我~ 2021-07-25 09:18:36
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信