HTML提交数据时如何指定请求端口 3000端口服务需发请求到3001
解决方法
你只需要修改表单的action属性为带3001端口的完整请求路径即可,具体操作如下:
- 把原有表单代码里的
action="/user"替换为完整的绝对路径,示例如下:
<form action="http://localhost:3001/user" method="get"> User name:<br> <input type="text" name="name" value="test"> <br><br> <input type="submit" value="Submit"> </form>
注意:如果是部署到公网服务器,把上述地址中的
localhost替换为对应服务的实际IP或者域名即可。
额外注意事项
因为浏览器同源策略的限制,端口不同的两个服务属于跨域场景,你需要在3001端口的后端服务中配置跨域资源共享(CORS)规则,否则浏览器会拦截该提交请求。
如果你3001端口的服务也是用Express搭建,可以按如下方式快速配置:
- 先安装cors依赖:
npm install cors - 在3001端口的服务代码中引入并使用:
const express = require("express"); const cors = require("cors"); const app = express(); // 启用全局跨域配置 app.use(cors()); // 后续的路由逻辑保持不变 app.get("/user", (req, res) => { // 处理表单提交的逻辑 });
内容的提问来源于stack exchange,提问作者seungbok3240
相关产品推荐
相关产品推荐

