CherryPy একটি শক্তিশালী ওয়েব ফ্রেমওয়ার্ক যা Cookies ব্যবস্থাপনা সহজ করে তোলে। Cookies হলো ছোট তথ্যের অংশ যা ওয়েব ব্রাউজার এবং সার্ভারের মধ্যে আদান-প্রদান করা হয়। এগুলি সাধারণত ইউজারের সেশন সংরক্ষণ, পছন্দসই সেটিংস বা অন্যান্য তথ্য সংরক্ষণের জন্য ব্যবহৃত হয়।
CherryPy তে Cookies তৈরি এবং সংরক্ষণ করার জন্য আপনি cherrypy.response.cookie অবজেক্ট ব্যবহার করতে পারেন। এই অবজেক্টটি আপনাকে কুকি সেট, কুকি পড়া এবং কুকি মুছতে সাহায্য করে।
Cookies তৈরি এবং সংরক্ষণ করা
CherryPy তে কুকি তৈরি করা এবং সেটি সংরক্ষণ করা বেশ সহজ। আপনি cherrypy.response.cookie ব্যবহার করে কুকি তৈরি ও সেট করতে পারেন। নিচে কুকি তৈরি এবং সংরক্ষণের উদাহরণ দেওয়া হলো।
উদাহরণ: একটি সাধারণ কুকি তৈরি এবং সেট করা
import cherrypy
class CookieApp:
@cherrypy.expose
def index(self):
# কুকি তৈরি এবং সেট করা
cherrypy.response.cookie['user'] = 'john_doe'
cherrypy.response.cookie['user']['path'] = '/' # কুকি যেকোনো পাথে কাজ করবে
cherrypy.response.cookie['user']['max-age'] = 3600 # কুকি এক ঘন্টা পর্যন্ত থাকবে
return "কুকি 'user' তৈরি এবং সেট করা হয়েছে।"
if __name__ == '__main__':
cherrypy.quickstart(CookieApp())
এখানে:
cherrypy.response.cookie['user'] = 'john_doe': এখানেuserনামক কুকি তৈরি করা হয়েছে, যার মানjohn_doe।max-age: কুকি একটি নির্দিষ্ট সময় পর্যন্ত থাকে, এখানে সেট করা হয়েছে ১ ঘন্টা (৩৬০০ সেকেন্ড)।path: কুকি ব্যবহার করার জন্য যেকোনো পাথ (যেমন/পুরো সাইটে) ব্যবহার করা যেতে পারে।
Cookies পড়া
একবার কুকি সেট করার পর, আপনি সহজেই কুকি পড়তে পারেন। CherryPy তে কুকি পড়তে cherrypy.request.cookie ব্যবহার করতে হয়।
উদাহরণ: কুকি পড়া
import cherrypy
class CookieApp:
@cherrypy.expose
def index(self):
# কুকি থেকে ডেটা পড়া
user_cookie = cherrypy.request.cookie.get('user', None)
if user_cookie:
return f"আপনার কুকি রয়েছে! কুকির মান: {user_cookie.value}"
else:
return "কোনও কুকি পাওয়া যায়নি!"
if __name__ == '__main__':
cherrypy.quickstart(CookieApp())
এখানে:
cherrypy.request.cookie.get('user', None): কুকি থেকেuserনামক কুকি পড়া হচ্ছে।- যদি কুকি পাওয়া যায়, তবে তার মান দেখানো হবে। যদি কুকি না থাকে, তবে "কোনও কুকি পাওয়া যায়নি!" বার্তা দেখানো হবে।
Cookies মুছে ফেলা
CherryPy তে কুকি মুছতে cherrypy.response.cookie অবজেক্ট ব্যবহার করে কুকির expires অ্যাট্রিবিউটকে অতীতের একটি তারিখে সেট করতে হয়।
উদাহরণ: কুকি মুছে ফেলা
import cherrypy
class CookieApp:
@cherrypy.expose
def index(self):
# কুকি মুছে ফেলা
cherrypy.response.cookie['user'] = ''
cherrypy.response.cookie['user']['expires'] = 'Thu, 01 Jan 1970 00:00:00 GMT'
return "কুকি 'user' মুছে ফেলা হয়েছে।"
if __name__ == '__main__':
cherrypy.quickstart(CookieApp())
এখানে:
cherrypy.response.cookie['user'] = '': কুকির মান শূন্য সেট করা হচ্ছে।expires: কুকির মেয়াদ শেষ করার জন্য এটি অতীতের একটি তারিখে সেট করা হচ্ছে।
Secure এবং HttpOnly কুকি
CherryPy তে আপনি Secure এবং HttpOnly কুকি সেট করতে পারেন:
- Secure কুকি শুধুমাত্র HTTPS সংযোগে পাঠানো হয়।
- HttpOnly কুকি শুধুমাত্র সার্ভার দ্বারা অ্যাক্সেসযোগ্য থাকে, এটি ক্লায়েন্ট সাইড জাভাস্ক্রিপ্ট দ্বারা অ্যাক্সেস করা যায় না।
উদাহরণ: Secure এবং HttpOnly কুকি
import cherrypy
class CookieApp:
@cherrypy.expose
def index(self):
# Secure এবং HttpOnly কুকি সেট করা
cherrypy.response.cookie['secure_user'] = 'john_doe'
cherrypy.response.cookie['secure_user']['path'] = '/'
cherrypy.response.cookie['secure_user']['secure'] = True # Secure কুকি
cherrypy.response.cookie['secure_user']['httponly'] = True # HttpOnly কুকি
return "Secure এবং HttpOnly কুকি তৈরি করা হয়েছে।"
if __name__ == '__main__':
cherrypy.quickstart(CookieApp())
এখানে:
secure: কুকি শুধুমাত্র HTTPS সংযোগের মাধ্যমে পাঠানো হবে।httponly: কুকি শুধুমাত্র সার্ভার সাইডে অ্যাক্সেসযোগ্য থাকবে।
CherryPy তে কুকি তৈরি, সংরক্ষণ, পড়া এবং মুছে ফেলা খুবই সহজ। আপনি কুকির মাধ্যমে ইউজারের সেশন, পছন্দসই সেটিংস, এবং অন্যান্য তথ্য সংরক্ষণ করতে পারেন। CherryPy এর কুকি ব্যবস্থাপনা ফিচার নিরাপদ এবং কার্যকরী, এবং আপনি কুকি নিরাপত্তার জন্য secure এবং HttpOnly ফ্ল্যাগ ব্যবহার করতে পারেন।
Read more