首页 > 后端开发 > Python教程 > 如何从同一本地网络上的不同计算机访问我的 FastAPI 后端?

如何从同一本地网络上的不同计算机访问我的 FastAPI 后端?

DDD
发布: 2024-12-01 09:07:11
原创
482 人浏览过

How to Access My FastAPI Backend from a Different Machine on the Same Local Network?

如何从同一本地网络上的不同机器/IP 访问 FastAPI 后端?

在不同机器上运行 FastAPI 后端和 Next.js 前端时同一本地网络,从前端访问后端可能会遇到问题。

将主机标志设置为0.0.0.0

要允许来自不同机器的访问,请在 uvicorn 命令中将主机标志设置为 0.0.0.0:

uvicorn main:app --host 0.0.0.0 --port 8000
登录后复制

这允许后端监听该主机的所有 IPv4 地址本地计算机。

调整防火墙设置

确保防火墙允许外部访问指定端口。为 Python 创建入站防火墙规则,通常在允许 Python 通过防火墙进行通信时自动添加。

调整 CORS 设置

配置 CORS 中间件以启用跨源请求:

origins = ['http://localhost:3000','http://192.168.178.23:3000']

app.add_middleware(
    CORSMiddleware,
    allow_origins=origins,
    allow_credentials=True,
    allow_methods=["*"],
    allow_headers=["*"],
)
登录后复制

在 JavaScript 中发出 HTTP 请求

在 JavaScript 获取请求中,使用与输入相同的域名浏览器的地址栏,以及后端的端口号:

fetch('http://192.168.178.23:8000/people', {...
登录后复制

在同一台计算机上本地测试时,使用带有正确域名的 fetch (例如,http://127.0.0.1:8000/people )或相对路径(例如“/people”),当前端和后端都在相同的端口和 IP 上运行时。如果前端的来源与后端不同,请将其添加到 CORS 设置中。

以上是如何从同一本地网络上的不同计算机访问我的 FastAPI 后端?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板