django:リクエストヘッダの内容を取得する まとめ
POST/GETの判別
HTMLフォームから送信されたパラメータが、どのメソッドで送信されたかを調べる方法
if request.method == 'POST': # POSTでパラメータを送ってきたときの処理 ... else: # GETでパラメータを送ってきたときの処理 ...
HTTP リクエストヘッダーを取得する
User-Agentなど、クライアントが送信する情報を取得したいときも、同じようにそれ用のDictionaryがある
userAgent = request.META.get('HTTP_USER_AGENT', None)
これを少し変えるとユーザーのIPも取得できる。
def get_client_ip(request): x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR') if x_forwarded_for: ip = x_forwarded_for.split(',')[0] else: ip = request.META.get('REMOTE_ADDR') return ip