Информация об изменениях

Сообщение Re: apache::thrift чтение файлов по http от 25.10.2014 16:27

Изменено 25.10.2014 16:30 Pavel Dvorkin

Здравствуйте, eight, Вы писали:

E>Задача состоит в том, чтобы получить в request файл, он там представляется как std::string. Всё работает замечательно, но на небольших файлах, размер которых не превосходит 32 кб. Вылетает исключение с с текстом — BadRequest 7ff4. Там видимо есть внутренний буфер, который нужно как-то увеличить но я не могу понять как! Буду очень благодарен, тем кто сможет чем-то помочь!


С thrift работал , но из Явы.

Посмотри вот сюда. Там есть возможность снять ограничение на размер

https://apache.googlesource.com/thrift/+/master/lib/java/src/org/apache/thrift/protocol/TBinaryProtocol.java

NO_LENGTH_LIMIT

Нет ли в С++ конструктора, принимающего размер, аналогичного

public TBinaryProtocol(TTransport trans, long stringLengthLimit, long containerLengthLimit, boolean strictRead, boolean strictWrite)

?

P.S. А почему string ? В строке же определенные правила есть, не все последовательтности байтов допустимы. Почему не binary ?
Re: apache::thrift чтение файлов по http
Здравствуйте, eight, Вы писали:

E>Задача состоит в том, чтобы получить в request файл, он там представляется как std::string. Всё работает замечательно, но на небольших файлах, размер которых не превосходит 32 кб. Вылетает исключение с с текстом — BadRequest 7ff4. Там видимо есть внутренний буфер, который нужно как-то увеличить но я не могу понять как! Буду очень благодарен, тем кто сможет чем-то помочь!


С thrift работал , но из Явы.

Посмотри вот сюда. Там есть возможность снять ограничение на размер

https://apache.googlesource.com/thrift/+/master/lib/java/src/org/apache/thrift/protocol/TBinaryProtocol.java

NO_LENGTH_LIMIT

Нет ли в С++ конструктора, принимающего размер, аналогичного

public TBinaryProtocol(TTransport trans, long stringLengthLimit, long containerLengthLimit, boolean strictRead, boolean strictWrite)

?

P.S. А почему string ? Почему не binary ?