From flask import Flask app = Flask




Download 252,31 Kb.
bet11/13
Sana30.07.2024
Hajmi252,31 Kb.
#268934
1   ...   5   6   7   8   9   10   11   12   13
Bog'liq
Flask notes

from flask import render_template

@app.errorhandler(404)


def not_found(error):
return render_template('error.html'), 404
Siz shunchaki qaytarish ifodasini o'rashingiz make_response()va uni o'zgartirish uchun javob ob'ektini olishingiz kerak, keyin uni qaytaring:
from flask import make_response

@app.errorhandler(404)


def not_found(error):
resp = make_response(render_template('error.html'), 404)
resp.headers['X-Something'] = 'A value'
return resp
JSON bilan API 
API yozishda umumiy javob formati JSON hisoblanadi. Flask yordamida bunday API yozishni boshlash oson. dictAgar ko'rinishdan yoki qaytarsangiz list, u JSON javobiga aylantiriladi.
@app.route("/me")
def me_api():
user = get_current_user()
return {
"username": user.username,
"theme": user.theme,
"image": url_for("user_image", filename=user.image),
}

@app.route("/users")


def users_api():
users = get_all_users()
return [user.to_json() for user in users]
Bu funksiyaga maʼlumotlarni uzatish uchun yorliq boʻlib jsonify(), u har qanday qoʻllab-quvvatlanadigan JSON maʼlumotlar turini ketma-ketlashtiradi. Bu shuni anglatadiki, dict yoki ro'yxatdagi barcha ma'lumotlar JSON seriyali bo'lishi kerak.
Ma'lumotlar bazasi modellari kabi murakkab turlar uchun avval ma'lumotlarni haqiqiy JSON turlariga aylantirish uchun ketma-ketlashtirish kutubxonasidan foydalanishni xohlaysiz. Jamiyat tomonidan qo'llab-quvvatlanadigan ko'plab seriyali kutubxonalar va Flask API kengaytmalari mavjud bo'lib, ular yanada murakkab ilovalarni qo'llab-quvvatlaydi.
Seanslar 
So'rov ob'ektiga qo'shimcha ravishda sessionfoydalanuvchiga tegishli ma'lumotlarni bir so'rovdan ikkinchisiga saqlash imkonini beruvchi ikkinchi ob'ekt ham mavjud. Bu siz uchun kukilar ustida amalga oshiriladi va kukilarni kriptografik tarzda imzolaydi. Buning ma'nosi shundaki, foydalanuvchi cookie faylingiz mazmunini ko'rishi mumkin, lekin imzolash uchun ishlatiladigan maxfiy kalitni bilmasa, uni o'zgartira olmaydi.
Seanslardan foydalanish uchun siz maxfiy kalitni o'rnatishingiz kerak. Seanslar qanday ishlaydi:

Download 252,31 Kb.
1   ...   5   6   7   8   9   10   11   12   13




Download 252,31 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



From flask import Flask app = Flask

Download 252,31 Kb.