এই প্রবন্ধে, আমরা দেখব কিভাবে আমরা যেখান থেকে POST রিকোয়েস্ট পাই সেখান থেকে আইপি অ্যাড্রেস পেতে পারি। এটি কখনও কখনও নিরাপত্তা পরামিতি একটি চেক রাখা গুরুত্বপূর্ণ. কখনও কখনও আপনাকে কিছু আইপি নিষিদ্ধ করতে হতে পারে বা কেউ একটি একক আইপি থেকে অনেক বেশি অনুরোধ পাঠাচ্ছে কিনা তা আপনাকে পরীক্ষা করতে হতে পারে। আসুন দেখি কিভাবে এটি একটি তৃতীয় পক্ষের প্যাকেজ দিয়ে সহজে করা যায়।
উদাহরণ
একটি জ্যাঙ্গো প্রকল্প এবং একটি অ্যাপ তৈরি করুন। urls সেটআপ করুন এবং কিছু মৌলিক জিনিস করুন যেমন INSTALLED_APPS-এ অ্যাপ যোগ করা।
আমরা কোনো জ্যাঙ্গো ফর্ম বা মডেল ব্যবহার করব না৷
৷প্রথমে, django-ipware ইনস্টল করুন৷ প্যাকেজ -
পিপ ইন্সটল জ্যাঙ্গো-আইপওয়্যার
এর জন্য আপনার কোন কনফিগারেশনের প্রয়োজন নেই।
এখন, টেমপ্লেট → home.html-এ যান এবং নিম্নলিখিত যোগ করুন -
tut
এখানে, আমরা আমাদের ফর্মের জন্য একটি ফ্রন্টএন্ড তৈরি করেছি, যা আইপি চেক করতে ব্যবহার করা হবে।
অ্যাপের urls.py-এ −
django.urls আমদানি পাথ থেকে, এর থেকে অন্তর্ভুক্ত করুন। import viewsurlpatterns =[ path('',views.home,name='home'),]
এখানে, আমরা আমাদের দৃষ্টিভঙ্গি উপস্থাপন করেছি।
views.py-এ −
from django.shortcuts import renderfrom ipware import get_client_ipdef home(request):if request.method=="POST":# আমরা এখানে ip পাই client_ip, is_routable =get_client_ip(request) # ক্লায়েন্ট আইপি হল IP ঠিকানাপ্রিন্ট(client_ip, is_routable) ) রিটার্ন রেন্ডার (অনুরোধ,'home.html')
এখানে, POST অনুরোধে, আমরা get_client_ip() ব্যবহার করি কোন আইপি থেকে অনুরোধ আসছে তা দেখার জন্য, এটি দুটি মান প্রদান করে।
আউটপুট
আমরা লোকালহোস্ট ব্যবহার করছি এই বিষয়টি মাথায় রেখে, আপনার আউটপুট হবে −
[23/Aug/2021 13:34:55] "GET / HTTP/1.1" 200 9999127.0.0.1 মিথ্যা[23/Aug/2021 13:34:58] "POST / HTTP/1.1" 200 9999পূর্বে>