Flask-web 개발[get 및post]

2294 단어

get


사용 장면: 서버에만 데이터를 가져오면 서버에 아무런 영향을 미치지 않습니다.전참: URL에 넣을까요?키와value를 지정하는 형식입니다.예: 웹 페이지:



    
    Title


dsdv



백그라운드:
@app.route('/search/')
def search():
    q = request.args.get('q')
    print(u'%s' % q)

post


장면 사용: 서버에 영향을 줍니다.전참: form data의 형식을 통해.예: 웹 페이지:



    
    Title



백그라운드:
@app.route('/login/',methods=['GET','POST'])
def login():
    if request.method == 'GET':
        return render_template('login.html')
    else:
        username = request.form.get('username')
        password = request.form.get('password')

대상

  • 용도: 사용자 데이터를 저장하는 데 쓰인다.
  • g 대상은 한 번의 요청에서 모두 사용할 수 있다.

  • 갈고리 함수 (hook)

  • before_request: 요청하기 전에 실행했습니다.장식기예요.보기 함수 이전에 실행합니다.쿠키 처리
  • @app.before_request
    def ll():
        if session.get('username'):
            g.username = session.get('username')
    

    쿠키를 사용하는 곳, 예를 들어 개인 정보를 편집하는 곳.
    @app.route('/edit/')
    def edit():
        if hasattr(g,'username'):
            return u'Sucess'
        else:
            return redirect(url_for('login'))
    
  • context_processor:
  • 역할: 컨텍스트 프로세서.반환 값은 사전입니다.키는 템플릿에서 변수로 렌더링됩니다.모든 인터페이스에서 사용할 수 있습니다.
  • @app.context_processor
    def mys():
        username = session.get('username')
        if username:
            return {'username':username}
    

    좋은 웹페이지 즐겨찾기