FastAPI 后端和 Next.js 前端都在localost. 在同一台计算机上,前端可以fetch毫无问题地进行 API 调用。然而,在同一网络上的另一台计算机上,例如,在 上192.168.x.x,前端运行,但其 API 调用不再工作。
我尝试使用代理作为 next.js 但仍然不起作用。
前端:
export default function People({setPerson}:PeopleProps) {
const fetcher = async (url:string) => await axios.get(url).then((res) => res.data);
const { data, error, isLoading } = useSWR(`${process.env.NEXT_PUBLIC_API}/people`, fetcher);
if (error) return <div>"Failed to load..."</div>;
return (
<>
{isLoading? "Loading..." :data.map((person: Person) =>
<div key={person.id}> {person.name} </div>)}
</>
)
}
Run Code Online (Sandbox Code Playgroud)
Next.js 应用程序env.local在启动时加载该文件,其中包含:
NEXT_PUBLIC_API=http://locahost:20002
后端:
rom typing import List
from fastapi import …Run Code Online (Sandbox Code Playgroud) 我是 webdev 的新手,我有这样的用例:用户向 API 发送一个大文件(例如视频文件),然后该文件需要可供其他 API 访问(可能位于不同的服务器上) )进行进一步处理。
我使用 FastAPI 作为后端,定义一个类型为 的文件参数UploadFile来接收和存储文件。但是,让其他 API 可以访问此文件的最佳方法是什么?有没有办法可以URL从保存的文件中获取公开访问权限,其他 API 可以使用哪些文件来下载该文件?