向大家求证一下,这是不是前端的设置出了问题 vscode试运行的情况下,cors跨域问题一直没有得到解决,后端改了很多次了,无论是指定还是不指定,都不行;并且前端每次请求过来后端都有日志生成。
前端浏览器只要不打开cors插件,就一直卡报错,只要打开cors插件就能用
{
"message": "Network Error",
"name": "AxiosError",
"stack": "AxiosError: Network Error\n at XMLHttpRequest.handleError (http://localhost:5173/node_modules/.vite/deps/axios.js?v=dfff3feb:1450:14)\n at Axios.request (http://localhost:5173/node_modules/.vite/deps/axios.js?v=dfff3feb:1780:41)\n at async drawCardAPI (http://localhost:5173/src/api/drawcard.ts:12:22)\n at async Proxy.drawCard (http://localhost:5173/src/components/drawcard.vue:19:28)",
"config": {
"transitional": {
"silentJSONParsing": true,
"forcedJSONParsing": true,
"clarifyTimeoutError": false
},
"adapter": [
"xhr",
"http"
],
"transformRequest": [
null
],
"transformResponse": [
null
],
"timeout": 0,
"xsrfCookieName": "XSRF-TOKEN",
"xsrfHeaderName": "X-XSRF-TOKEN",
"maxContentLength": -1,
"maxBodyLength": -1,
"env": {},
"headers": {
"Accept": "application/json, text/plain, */*"
},
"baseURL": "http://localhost:3000",
"method": "get",
"url": "/api/cards/draw"
},
"code": "ERR_NETWORK",
"status": null
}
// 定义应用路由
pub fn app_router(pool: DbPool) -> Router {
let cors = configure_cors();
Router::new()
.layer(cors) // 添加跨域资源共享(CORS)中间件
.route("/api/cards/draw", options(options_handler)) // 处理跨域资源共享(CORS)预检请求
.route("/api/cards/draw", get(draw_card_handler)) // 抽卡应用
// ... 其他路由 ...
.layer(Extension(pool)) // 将数据库连接池作为共享状态
}
1
共 6 条评论, 1 页
评论区
写评论感谢提醒
--
👇
潜水的猫: 中间件需要看具体的框架实现,有些是正序有些是倒叙
中间件需要看具体的框架实现,有些是正序有些是倒叙
已搞定,再次感谢;最终还是调整了顺序以后通了。不知道为什么gpt和一些工具里面对于洋葱模型的认识,一直认为是3412的顺序,实际上应该是1234的顺序。
--
👇
Nayaka: 洋葱模型了解一下,你cors的layer错了 https://rustcc.cn/article?id=574c7336-97e6-4bc1-b4bf-5b2b8ce92844
在发布前也看了这个,哈哈,还不太熟悉,还需要学习
--
👇
Nayaka: 洋葱模型了解一下,你cors的layer错了 https://rustcc.cn/article?id=574c7336-97e6-4bc1-b4bf-5b2b8ce92844
感谢
👇
Nayaka: 洋葱模型了解一下,你cors的layer错了 https://rustcc.cn/article?id=574c7336-97e6-4bc1-b4bf-5b2b8ce92844
洋葱模型了解一下,你cors的layer错了 https://rustcc.cn/article?id=574c7336-97e6-4bc1-b4bf-5b2b8ce92844