반응형
응답이 Fast의 POST 응답을 표시하지 않음API 백엔드 애플리케이션
나는 json 파일을 가져와 에서 Ui를 만드는 간단한 React Ui를 가지고 있다. 다음은 원하는 출력입니다:
하지만, 저는 다음과 같이 이해합니다:
그래서, "책을 읽어라."와 "마을을 자전거로 돌아라."라는 두 줄은 표시되지 않는다. 이 두 줄은 형식 정보에서 나온 것으로 되어 있습니다. 에서 데이터를 가져올 수 있을 것 같은 느낌이 들지만, 어떻게 표시해야 할지 모르겠습니다. 이것은 제 출력입니다.
이를 위한 기능은 다음과 같습니다:
export default function Todos() {
const [todos, setTodos] = useState([])
const fetchTodos = async () => {
const response = await fetch("http://localhost:8000/todo")
const todos = await response.json()
setTodos(todos.data)
}
useEffect(() => {
fetchTodos()
}, [])
return (
<TodosContext.Provider value={{todos, fetchTodos}}>
<AddTodo />
<Stack spacing={5}>
{todos.map((todo) => (
<b>{todo.item}</b>
))}
</Stack>
</TodosContext.Provider>
)
}
항목을 인쇄해야 하는 부분이지만, 인쇄되지 않습니다!
콘솔 로그 정보는 다음과 같습니다:
다음의 응답은 다음과 같습니다:
더 필요한 정보가 있으면 알려주세요.
Fast에서 를 활성화해야 합니다API 백엔드. Fast에서 구성할 수 있습니다를 사용하는 API 응용 프로그램입니다.
메모
기원.
오리진은 프로토콜(, ), 도메인(, ), 포트(, )의 조합이다.
그래서:
http://localhost
https://localhost
http://localhost:8080
이들은 모두 에 있더라도 서로 다른 프로토콜이나 포트를 사용하므로 서로 다른 "원점"입니다.
예
이것도 한번 보세요.
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
app = FastAPI()
origins = ["http://localhost:3000", "http://127.0.0.1:3000"]
app.add_middleware(
CORSMiddleware,
allow_origins=origins,
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
반응형
'개발하자' 카테고리의 다른 글
Jupyter/Jupyter Lab 노트북에 목차를 추가하려면 어떻게 해야 합니까? (0) | 2023.03.19 |
---|---|
개발 모드에서 Svelte-kit에서 프록시하는 방법 (0) | 2023.03.19 |
주피터 SQL 셀의 Python 변수 (0) | 2023.03.17 |
TypeScript - 문자열에 줄 바꿈(\n)을 추가하는 방법은 무엇입니까? (0) | 2023.03.17 |
TypeScript 컴파일에서 실험 장식자 경고 (1) | 2023.03.16 |