Запросы Python добавляют дополнительные заголовки в HTTP GET

#python #python-2.7 #http-headers #python-requests

#python #python-2.7 #http-заголовки #python-запросы

Вопрос:

Я использую модуль запросов python 2.7.

Я сделал этот HTTP GET с пользовательским заголовком ниже;

 header ={
            "projectName": "zhikovapp",
            "Authorization": "Bearer HZCdsf="
        }
response = requests.get(bl_url, headers = header)
 

Сервер возвращает неверный ответ. При ближайшем рассмотрении отправленного заголовка я обнаружил, что модуль запросов python добавил несколько дополнительных заголовков.

 {
'Accept-Encoding': 'gzip, deflate', 
'projectName': 'zhikovapp',
'Accept': '*/*', 
'User-Agent': 'python-requests/2.11.1', 
'Connection': 'keep-alive', 
'Authorization': 'Bearer HZCdsf='
}
 

Дополнительные заголовки Accept-Encoding , Accept , Connection , User-Agent . Это ошибка в модуле запросов python? Я использую запросы версии 2.11.1

Как я могу удалить эти дополнительные заголовки, добавленные модулем запросов python?

Комментарии:

1. Это не ошибка. HTTP-запросы обычно имеют несколько стандартных заголовков, которые всегда отправляются. Не удаляйте их.

2. Почему ответ недействителен? Имеет ли это какое-либо отношение к недопустимым заголовкам?

3. Дэниел, я написал аналогичный код, используя node.js . Эти дополнительные заголовки отсутствовали, и сервер ответил без ошибок на node.js код.

4. Как у вас ' раньше "Authorization" ?

5. Это ошибка опечатки. Вы наблюдательны. Я внес исправления в вопрос.

Ответ №1:

вы можете выполнить подготовленный запрос.

http://docs.python-requests.org/en/latest/user/advanced/#prepared-requests

затем вы можете удалить заголовки вручную

 del prepped.headers['Content-Type']