벨로그
https://velog.io/@dalkong/Flask-React-%EC%97%B0%EB%8F%99%ED%95%98%EA%B8%B0
mkdir flask-server
입력cd flask-server
입력해서 flask-server 폴더로 접근touch server.py
입력type nul > server.py
입력cd..
쳐서 폴더 나오기npx create-react-app client
입력해서 client라는 리액트 프로젝트 만들어주기cd flask-server
입력해서 flask-server 폴더에 접근python3 -m venv venv
입력py -3 -m venv venv
입력source venv/bin/activate
입력venv\Scripts\activate
입력pip3 install Flask
입력server.py
파일 클릭해서 아래 코드 작성from flask import flask
app = Flask(__name__)
# Members API Route
@app.route("/members")
def members():
return {"members": ["Member1", "Member2", "Member3"]}
if __name__ == "__main__":
app.run(debug=True)
py server.py
또는 python3 server.py
입력http://127.0.0.1:5000
에서 서버가 돌아가고 있는걸 확인할 수 있음/members
입력 또는 127.0.0.1:5000/users
입력App.test.js
삭제, index.css
삭제, logo.svg
삭제index.js
들어가서 index.css
import 지우기"private"
밑에 "proxy": "http://localhost:5000,"
추가rfce + Enter
import React, {useState, useEffect} from 'react'
cd..
으로 나와서 cd client
로 client 폴더에 접근npm start
명령어 실행const [data, setData] = useState([{}])
useEffect(() => {
fetch("/members").then(
res => res.json()
).then(
data => {
setData(data)
console.log(data);
}
)
}, [])
import React, {useState, useEffect} from 'react'
function App() {
const [data, setData] = useState([{}])
useEffect(() => {
fetch("/members").then(
res => res.json()
).then(
data => {
setData(data)
console.log(data);
}
)
}, [])
return (
<div>App</div>
)
}
export default App
저는 첫 번째 방법에서 실행하고 proxy 오류 나는 것을 두 번째, 세 번째 방법으로 잡았습니다!
.env
파일 추가)DANGEROUSLY_DISABLE_HOST_CHECK=true
const { createProxyMiddleware } = require('http-proxy-middleware');
module.exports = function(app) {
app.use(
'/api',
createProxyMiddleware({
target: 'http://localhost:5000',
changeOrigin: true,
})
);
};