接口请求了两次,一次报200,一次报404

实际上,预检(OPTIONS) 200 并不代表接口存在,POST 404表示后端没有这个路径,或者说路径不在这个server上。也就是说,跨域是通的,但接口地址是错的/不存在。

现在的网络面板

分别解释各自的意思:

1、OPTIONS是什么

浏览器在发POST + FormData之前,会先问一句:"我能不能向你这个地址,用POST,带文件,带headers发请求"

这就是CORS预检请求------preflight。

OPTIONS 200说明有一个服务器在这个地址上响应了,并且返回了类似:

Access-Control-Allow-Origin: *

Access-Control-Allow-Methods: POST

2、POST 404

表示服务器明确告诉"这里没有 /api ",也就是说接口路径不对。

3、为什么会出现[OPTIONS有,POST没有]?

这是因为很多后端/网关/Nginx会这样配置:

location /api/ {

add_header Access-Control-Allow-Origin *;

add_header Access-Control-Allow-Methods GET,POST,OPTIONS;

if ($request_method = OPTIONS) {

return 200;

}

}

OPTIONS被统一放行,POST再交给后端路由处理。

相关推荐
Live0000012 小时前
在鸿蒙中使用 Repeat 渲染嵌套列表,修改内层列表的一个元素,页面不会更新
前端·javascript·react native
柳杉12 小时前
使用Ai从零开发智慧水利态势感知大屏(开源)
前端·javascript·数据可视化
兆子龙12 小时前
从高阶函数到 Hooks:React 如何减轻开发者的心智负担(含 Demo + ahooks 推荐)
前端
狗胜13 小时前
测试文章 - API抓取
前端
三小河13 小时前
VS Code 集成 claude-code 教程:告别海外限制,无缝对接国内大模型
前端·程序员
jerrywus13 小时前
前端老哥的救命稻草:用 Obsidian 搞定 Claude Code 的「金鱼记忆」
前端·agent·claude
球球pick小樱花13 小时前
游戏官网前端工具库:海内外案例解析
前端·javascript·css
用户605723748730813 小时前
AI 编码助手的规范驱动开发 - OpenSpec 初探
前端·后端·程序员
狗胜13 小时前
AI观察日记 2026-03-02|CLAUDE、TYPE、APPFUNCTIONS:掘金热门里的下一步信号
前端