2016-11-14 2 views
0

У меня есть веб-сервис RESTFul, который позволяет скачивать файлы. Пользователь отправит запрос с несколькими заголовками HTTP-запросов, чтобы указать файлы для загрузки.Предотвращение заголовков запросов HTTP от обрезки

Однако я обнаружил, что заголовки запросов HTTP будут автоматически обрезаны, например, если пользователь отправит значение заголовка - «a», с пробелом в конце, оно будет обрезано, и, следовательно, значение станет «a ». Как я могу предотвратить выравнивание значений?

Ниже мой код, чтобы получить значение каждого заголовка:

string filename = context.IncomingRequest.Headers["filename"]; 

context относится к WebOperationContext класса

ответ

0

Почему вы не просто читать необработанный запрос и извлечь то, что вам нужно?

Request.InputStream.Position = 0; 
var input = new StreamReader(Request.InputStream).ReadToEnd(); 
0

согласно RFC2616 specification (HTTP 1.1 - страница 31)

"передней или задней LWS МОЖЕТ быть удалены без изменения семантики значения поля".

К сожалению, я не знаю о программном обеспечении http, которое этого не делает. Например, см. Этот комментарий ->cURL