2015-11-21 2 views
0

Я хочу прочитать заголовки входящего запроса на мой сервер, чтобы отслеживать его местоположение и другие атрибуты.Как захватить и прочитать заголовки входящих HTTP-запросов в Flask?

Например: Если кто-то нажимает на URL-адрес, как я смогу прочитать заголовки входящего запроса?

+3

Сколько из [* Колба Quickstart *] (http://flask.pocoo.org/docs/0.10/ quickstart/# the-request-object) вы читали? Это одна из самых простых вещей, которые вы делаете в среде веб-сервера. Документация [* API *] (http://flask.pocoo.org/docs/0.10/api/#incoming-request-data) также описывает, как получить информацию о запросе. –

+0

Я понятия не имею о Flask, но я смог получить ответ за 2 минуты: [Request class] (http://werkzeug.pocoo.org/docs/0.11/wrappers/#werkzeug.wrappers.Request) - это то, что ты ищешь. Есть ли какой-либо конкретный заголовок за пределами легкодоступного списка, который вас интересует? –

ответ

1

Вы можете использовать flask.request.headers. Это объект werkzeug.datastructures.EnvironHeaders, но вы можете использовать его как обычный dict.

Например:

from flask import Flask, request 

app = Flask(__name__) 

@app.route('/') 
def main(): 
    print(request.headers) 
    print(request.headers['User-Agent']) 

if __name__ == '__main__': 
    app.run() 

Выход выглядит следующим образом:

Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
Host: 127.0.0.1:5000 
Content-Type: 
Dnt: 1 
Content-Length: 
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4 
Accept-Encoding: gzip, deflate, sdch 
Cache-Control: max-age=0 
Connection: keep-alive 
Upgrade-Insecure-Requests: 1 
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36 


Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.80 Safari/537.36 

 Смежные вопросы

  • Нет связанных вопросов^_^