Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2014.05.25;
Скачать: CL | DM;

Вниз

Появляются лишние символы при отправке TIdMultiPartFormDataStream   Найти похожие ветки 

 
mfender   (2013-08-06 18:22) [0]

Отправляю JSON в некотором поле:

.....
 MP := TIdMultiPartFormDataStream.Create;
 J := TJSONObject.Create;
 Mar := TJSONMarshal.Create(TJSONConverter.Create);
 try
   J := Mar.Marshal(P) as TJSONObject;
   showmessage(J.ToString);
   MP.AddFormField("JSON", J.ToString, "utf-8");
   Memo1.Lines.Add(IdHTTP1.Post(_st.RemoteUrl, MP));
 finally
.....

Уходит нормально всё. На сервер приезжает строка, побитая после каждого 70-го байта таким странным набором символов: =\r\n (\0x3d\0x0d\0x0a).

Что к чему? Как избавиться?


 
брат Птибурдукова   (2013-08-06 18:45) [1]

А что в ней странного? Банальный перевод строки в виндовом стиле.


 
mfender   (2013-08-06 18:58) [2]

И на кой он мне нужен? Мне JSON нужен, а в таком виде его ни один JSON-парсер не вразумляет.


 
mfender   (2013-08-06 19:00) [3]

Поясню. Я отправляю вот такую строку:

{"type":"class_Protocol.TAgregatorProtocol","id":1,"fields":{"FRemoteController" :"","FRemoteMethod":"","FData":{"type":"System.TObject","id":2,"fields":{}},"FLo g":null}}


А получаю вот такую беду:

{"type":"class_Protocol.TAgregatorProtocol","id":1,"fields":{"FRemoteC=
ontroller":"","FRemoteMethod":"","FData":{"type":"System.TObject","id"=
:2,"fields":{}},"FLog":null}}


 
Обычный Порошок   (2013-08-06 20:50) [4]

Как избавиться?

Как избавиться от TIdMultiPartFormDataStream?
Или как избавиться от TidHTTP?

Ole object.
xmlhttprequest.
и будет все нативно, а не через индёвый анус


 
mfender   (2013-08-06 22:22) [5]

Покурил маленько всемирный разум. Узнал про quoted-printable. Оказалось, что избавиться от этих переводов строк можно указав соответствующий ситуации Content-Transfer-Encoding. В данном случае это оказался 8bit.


MP.AddFormField("JSON", J.ToString, "utf-8").ContentTransfer := "8bit";


P.S. У меня дежа-вю... Кажется я уже задавался этим вопросом...



Страницы: 1 вся ветка

Текущий архив: 2014.05.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.005 c
15-1385107572
Сергей
2013-11-22 12:06
2014.05.25
Решение задачи


15-1384535475
БарЛог
2013-11-15 21:11
2014.05.25
Идея: распределённый торрент-диск


2-1375709808
savek
2013-08-05 17:36
2014.05.25
[Warning] BaseUnit.pas(558): W1000 Symbol Resume is deprecated


15-1384964446
Sergey Masloff
2013-11-20 20:20
2014.05.25
Ну чо опять про работу (не дельфи) ;-)


3-1298273047
Александр Т
2011-02-21 10:24
2014.05.25
Сгруппировать объединение...