Django:獲取客戶端IP方法

HTTP協議頭其中有幾個字段是用來獲取IP用的,常見的有HTTP_X_FORWARDED_FOR,REMOTE_ADDR。那麼在用Django開發的Web服務獲取瀏覽器IP的思路就是。
當用戶通過瀏覽器訪問Web服務時,其實就是向Web主機發起一個HTTP請求,我們可以獲取請求頭中對應的字段進行處理。代碼如下。

    if request.META.has_key('HTTP_X_FORWARDED_FOR'):
        ip =  request.META['HTTP_X_FORWARDED_FOR']
    else:
        ip = request.META['REMOTE_ADDR']
    print(ip)

用戶通過瀏覽器訪問Web服務發起HTTP請求=>Django通過其url路由,匹配處理這個請求的視圖函數=>之前在視圖函數中寫了上面的代碼=>視圖函數處理後將ip輸出在終端中。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章