TIL

220510 TIL

Vince_rf 2022. 5. 15. 22:15

#font awesome
사이트에 대해 알았다. 강의에서 알려준 CDN은
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
였는데 font awesome 사이트에 들어가니 버전이 6으로 바뀌어 있어서
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css" integrity="sha512-KfkfwYDsLkIlwQp6LFnl8zNdLGxu9YAA1QvwINks4PhcElQSvqcyVLLD9aMhXd13uQjoXtEKNosOWaZqXgel0g==" crossorigin="anonymous" referrerpolicy="no-referrer" />
으로 바꿔서 head태그 안에 넣어줬더니 이모지가 잘 작동했다.

#몽고db를 ec2와 연결하는 법을 몰라서 정말 정말 정말 정말 정말 정말 정말 한참을 헤맸는데
다행히 방법을 찾았다. ubuntu를 이용해서 리눅스에 몽고db를 설치해야하는 것이었다.
Robo 3T로 연결하는 방법까지 무사히 마칠 수 있었다.

#Flask app에러가 자꾸 떠서 에러메시지를 확인하는 중에 중요한 사실을 깨달았다.
아래는 구글링을 통해 찾은 해결법이다.

로그인 회원가입 기능을 flask에서 구현할 때 
error code : 'str' object has no attribute 'decode' 가 나왔다.
문제는 jwt 토큰을 암호화하고 utf-8 로 다시 디코딩해줄 때 나왔는데
token = jwt.encode(payload, SECRET_KEY, algorithm='HS256').decode('utf-8')
검색을 해보니 python3에서는 기본이 utf-8이기 때문에 굳이 decode를 사용할 필요가 없다고 합니다.
따라서 decode 함수도 필요 없습니다.
출처: https://thalals.tistory.com/165 [힘차게, 열심히 공대생]

#flask로 서버를 만들어서 
html에 $.ajax({
                type: "GET",
                url: "/view",
                data: {},
                success: function (response) {
                    console.log(response)
                }
            });
app.py에 
@app.route('/view', methods=['GET'])
def viewpost():
    # 포스팅하기
    user_list = list(db.users.find({}, {'_id': False}))
    return jsonify({'user_list':user_list, 'msg': '포스팅 성공'})
를 했더니 작동이 이상하게 됐다. 

그래서
@app.route('/view')
def view():
    return render_template('reviewpost.html')

@app.route('/view/viewpost', methods=['GET'])
def viewpost():
    # 포스팅하기
    user_list = list(db.users.find({}, {'_id': False}))
    return jsonify({'user_list':user_list, 'msg': '포스팅 성공'})
어쩌다 이렇게 바꾸고
html 역시
$.ajax({
                type: "GET",
                url: "/view/viewpost",
                data: {},
                success: function (response) {
                    console.log(response)
                }
            });
로 바꿨더니 이제야 콘솔창에 db에서 뽑아온 api가 찍힌다.
왜 이렇게 작동하는지는 모르겠지만 체한게 내려가는거같다

'TIL' 카테고리의 다른 글

220514 TIL  (0) 2022.05.15
220513 TIL  (0) 2022.05.15
220512 TIL  (0) 2022.05.15
220511 TIL  (0) 2022.05.15
220509 TIL  (0) 2022.05.15