Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 0 떼기
- 풀스택gpt
- l로 만들기
- 열반스쿨기초반
- 배열 만들기6
- 파이썬
- 세 개의 구분자
- 프로그래머스
- 프로그래머스 기초
- 주사위 게임1
- 코딩테스트
- 프로그래머스 코딩테스트 기초
- 배열 만들기3
- 프로그래머스 입문
- 부동산강의
- 노개북
- 첫번째로 나오는 음수
- 특별한 이차원 배열 1
- 월부
- 무작위로 k개의 수 뽑기
- 기초
- 열기반
- 월급쟁이부자들
- 개발자북클럽
- 월부닷컴
- 문자열이 몇 번 등장하는지 세기
- 노마드코더
- Python
- 특정 문자열로 끝나는 가장 긴 문자열 찾기
- 클린코드
Archives
- Today
- Total
해쟈스토리
FastAPI로 정적파일 mount하기 본문
728x90
반응형
나는 wordle 게임을 js, html, css만으로 만들었었는데 이걸 fastAPI와 연결하고 싶었다.
초기 코드 haeji1124/wordle at v.0.0.0
이럴 경우 아래와 같이 코드 수정 후 static 폴더에 css, js, html 를 넣어주면 된다.
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
app = FastAPI()
app.mount("/", StaticFiles(directory="static", html=True), name="static")
그러면 이제 서버에서 정답을 보내주고 그걸 토대로 검사한다고 치자
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
app = FastAPI()
app.mount("/", StaticFiles(directory="static", html=True), name="static")
answer = 'TRAIN'
@app.get('/answer')
def get_answer():
return {'answer' : answer}
const handleEnterKey = async() => {
const 응답 = await fetch('/answer');
const 정답_객체 = await 응답.json();
const 정답 = 정답_객체.answer;
if (index === 5){
let 맞은_갯수 = 0
// 정답 확인
for (let i = 0 ; i < 5; i++){
const block = document.querySelector(`.board-block[data-index='${attempts}${i}']`);
block.style.color = "white";
if (block.innerText === 정답[i]) {
block.style.background = '#6AAA64'
맞은_갯수 += 1
}
else if (정답.includes(block.innerText)) block.style.background = "#C9B458"
else block.style.background = "#787C7E"
}
if (맞은_갯수 === 5) gameover();
else nextLine();
}
else{
// 5글자 모두 입력하세요
}
}
수정 후 shift + F5 로 캐쉬데이터를 무시하고 완전 새로고침을 해준다.
728x90
반응형
'파이썬' 카테고리의 다른 글
| 클론코딩 - 에어비앤비 2주차 (2) | 2024.10.07 |
|---|---|
| 클론코딩 - 에어비앤비 1주차 (2) | 2024.09.30 |