pyramid_subscribers_cookiexfer আপনি একটি HTTP ব্যতিক্রম উপর প্রতিক্রিয়া অনুরোধ থেকে কুকি হস্তান্তর করতে পারবেন যে একটি পাইথন মডিউল. না টি পুননির্দেশনা httpexceptions এর উপশ্রেণী হিসাবে আপনি এই প্রয়োজন হতে পারে.
সংক্ষিপ্ত বিবরণ
একটি টিপিক্যাল ব্যবহারকারী প্রবাহ এই হতে পারে:
* ব্যবহারকারী / অ্যাকাউন্ট / লগইন ফর্ম জমা
* ব্যাক অনুমোদন, বিভিন্ন কুকিজ সেট
* ব্যাক / নতুন অ্যাকাউন্ট / হোম পুননির্দেশনা
আপনি শুধুমাত্র পিরামিড সেশন মাধ্যমে তথ্য জিদ এই প্রয়োজন হয় না - পিরামিড অধিবেশন কুকি অনুমোদনের পূর্বে সেট করা হয়, তথ্য পুনর্নির্দেশ মাধ্যমে হয়ে থাকে তাই.
আপনি যেমন ক্লায়েন্ট ব্যবহারকারী তথ্য ক্যাশে হিসাবে, ব্রাউজারের কুকি মাধ্যমে আনুষঙ্গিক তথ্য সেটিং করছি এই দরকারী.
প্রায় প্রত্যেক ব্রাউজার একটি পুনর্নির্দেশ একটি setcookie হেডার সম্মান - শুধুমাত্র সাফারি এই উপেক্ষা পরিচিত & nbsp হয়;. অনেক ডেভেলপার এই প্যাকেজ যে স্বয়ংক্রিয়রূপে, সময় তথ্য কুকিজ ভবিষ্যতে ভিজিট দেখাতে সংরক্ষিত আছে.
দুটি পদ্ধতি তথ্য জিদ করার জন্য পাওয়া যায়
- Add_headers - প্রতিক্রিয়া অনুরোধ থেকে স্থানান্তর কুকি হেডার
- Session_save - পরের পৃষ্ঠা দৃশ্য উপর প্রতিক্রিয়া সেগুলি স্থানান্তর করা, আপনি সময় মধ্যে সেট করতে চান চাই কুকি সংরক্ষণ
উপরন্তু প্যাকেজ 'স্বতন্ত্র' সদৃশ এড়াতে কুকিজ পরিচালনা করার ক্ষমতা উপলব্ধ করা. & Nbsp; এই মুহূর্তে এই আচরণ করা বাঞ্ছনীয়.
প্যাকেজ আপনার INI ফাইল সেট একটি কয়েক ভেরিয়েবল মাধ্যমে কনফিগার করা হয়, তারপর একটি আমদানি সঙ্গে সক্রিয় এবং আপনার .ini মধ্যে 'আরম্ভ' কল
অভ্যন্তরীণ বলবিজ্ঞান চমত্কার সহজ:
& Nbsp; & nbsp; & nbsp; config.add_subscriber (
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; new_request,
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 'Pyramid.events.NewRequest')
& Nbsp; & nbsp; & nbsp; config.add_subscriber (
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; new_response,
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; 'Pyramid.events.NewResponse')
& Nbsp; & nbsp; & nbsp;
ডিবাগ সাহায্য এবং প্রক্রিয়াকরণ উপর নিচে কাটা করার জন্য:
- Sessioning ব্যবহার করা হবে যদি initialize_subscribers () শুধুমাত্র একটি NewResponse শ্রোতা ইনস্টল করা হবে
- একটি কনফিগার RegEx (ডিবাগ বিবৃতি সহ) মডিউল থেকে পাথ বাছা ব্যবহার করা হয়
গুরুত্বপূর্ণ নোট:
- এই প্যাকেজ HttpException সঙ্গে উত্থাপিত হয় যে হেডার সম্মান করবে
- কারণ কিভাবে পিরামিড এর internals কাজ, আপনাকে অবশ্যই 'রিটার্ন' রি - না 'বাড়াতে' - আপনি request.response & nbsp থেকে স্থানান্তরিত কুকি চান. আপনি একটি পুনর্নির্দেশ 'বাড়াতে' যদি, পুনর্নির্দেশ আরম্ভ করার জন্য ব্যবহার করা শুধুমাত্র হেডার সময় সংরক্ষণ করা যায় (তারা নতুন প্রতিক্রিয়া বস্তুর মধ্যে বিদ্যমান এবং স্থানান্তর করা প্রয়োজন হবে না)
এই পরিস্থিতিতে কাজ করবে:
কয়েক ক্ষেত্রে উদাহরণ
& Nbsp; & nbsp; & nbsp; ফিরে HTTPFound (অবস্থান = '/ নতুন / অবস্থান')
& Nbsp; & nbsp; & nbsp; - Request.response.set_cookie দ্বারা সেট করা কোন কুকি স্থানান্তরিত হবে
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; (হেডার = dict_of_headers, অবস্থান = '/ নতুন / অবস্থান') HTTPFound ফিরে
& Nbsp; & nbsp; & nbsp; - Dict_of_headers মধ্যে হেডার নতুন প্রতিক্রিয়ায় ইতিমধ্যে, এবং সময় জিদ করতে পারেন
& Nbsp; & nbsp; & nbsp; - Request.response.set_cookie দ্বারা সেট করা কোন কুকি স্থানান্তরিত হবে
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; বাড়াতে HTTPFound (অবস্থান = '/ নতুন / অবস্থান')
& Nbsp; & nbsp; & nbsp; - Request.response.set_cookie দ্বারা সেট করা কোন কুকি স্থানান্তরিত হবে
& Nbsp; & nbsp; & nbsp; (হেডার = dict_of_headers, অবস্থান = '/ নতুন / অবস্থান') HTTPFound বাড়াতে
& Nbsp; & nbsp; & nbsp; - Dict_of_headers মধ্যে হেডার নতুন প্রতিক্রিয়ায় ইতিমধ্যে, এবং সময় জিদ করতে পারেন
& Nbsp; & nbsp; & nbsp; - Request.response.set_cookie দ্বারা সেট করা কোন কুকি স্থানান্তরিত হবে
সেটআপ
environment.ini
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_add_headers = সত্য
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_add_headers__unique = সত্য
& Nbsp; & nbsp; & nbsp; cookie_xfer.redirect_session_save = মিথ্যা
& Nbsp; & nbsp; & nbsp; মিথ্যা = cookie_xfer.redirect_session_save__unique
& Nbsp; & nbsp; & nbsp; cookie_xfer.re_excludes = "^ / (CSS | img | জাতীয় | বিকৃত | _debug_toolbar)"
& Nbsp; & nbsp; & nbsp;
অ্যাপ্লিকেশন / __ init__.py
& Nbsp; & nbsp; & nbsp; আমদানি pyramid_subscribers_cookiexfer
& Nbsp; & nbsp; & nbsp;
& Nbsp; & nbsp; & nbsp; Def প্রধান (global_config, ** সেটিংস):
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ...
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; pyramid_subscribers_cookiexfer.initialize (কনফিগ, সেটিংস)
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; ...
আবশ্যক
- পাইথন
- পিরামিড
পাওয়া মন্তব্যসমূহ না