NSmutableURLRequest, изменяющий поля заголовка
-
11-09-2019 - |
Вопрос
NSmutableURLRequest, очевидно, меняет регистр в полях заголовка.
Например, установка:
[request addValue:myValue forHTTPHeaderField:@"FOOBAR"];
изменит поле заголовка на «Foobar».
Кто-нибудь знает способ обойти это?Я работаю со службой, которая требует передачи поля, чувствительного к регистру.
Кроме того, NSMutableURLRequest на самом деле не должен принимать решение за меня.
Решение
NSMutableURLRequest
следует за Спецификация RFC 2616 для HTTP/1.1 который говорит:
Имена полей не чувствительны к регистру.
Или документация, в котором говорится:
В соответствии с HTTP RFC имена полей заголовка HTTP не чувствительны к регистру.
Итак, мы можем заключить, что NSURLRequest
на самом деле это просто стандартизация использования заглавных букв в полях заголовков.Как это продумано."="
Похоже, тебе не повезло.
Редактировать:«Я работаю с сервисом, которая требует передачи чувствительного к случаю поля». Поскольку протокол HTTP/1.1 определяет, что имена поля заголовков являются нечувствительными, эта служба разбивает протокол.В Интернете уже полно примеров того, что происходит, когда компании и сервисы пытаются игнорировать протокол ради собственной выгоды.(Бывший:Вы когда-нибудь пытались написать веб-страницу, которая работала бы в Firefox и IE6?) Я бы, если можно, не использовал этот сервис, или написал бы им и сообщил, что они делают и почему это неправильно.