表单action相对路径异常:提交路径与预期不符的技术问询
表单相对路径提交问题解决办法
当你在路由/wishlist/admin对应的页面配置表单,使用相对路径action="updateItem/:id"时,浏览器会将当前URL/wishlist/admin识别为文件路径而非目录,因此相对路径会基于其父目录/wishlist解析,最终提交路径变成/wishlist/updateItem/:id,这就是和预期不符的原因。
有两种简单方式让路径相对当前页面路由:
- 给
action加上./前缀,明确指定相对当前目录:
这样浏览器会把<form action="./updateItem/:id" method="post"> <!-- 表单内容 --> </form>/wishlist/admin当作目录处理,提交路径就会变成你预期的/wishlist/admin/updateItem/:id。 - 直接在
action开头拼接admin/,即action="admin/updateItem/:id",这种方式也能得到预期路径,但./的写法更通用,适配页面路由层级变化的场景。
不需要强制使用绝对路径,用上述两种相对路径写法即可解决问题。
内容的提问来源于stack exchange,提问作者Skye TheFox
相关产品推荐
相关产品推荐

