Evgeny
Gzip решает
фотку 3.3 мб упаковал до 3.1
Evgeny
слабовато
Ярослав
с вот этим же
пробовал
Dmytro
пробовал
ладно, сдаюсь) В моей случае так работало. Удачи
Директор цирка
Ярослав
@Multipart @POST("accounts/signin") Call<SimpleResponse> login( @Part MultipartBody.Part username, по логам http клиента вообще не отличается от @POST("accounts/signin") Call<SimpleResponse> login( @Body RequestBody body
Evgeny
Фотку не надо
голос видео и фотка, то что сжимать нужно
Директор цирка
Evgeny
Скорее не нужно
может есть другой способ ускорить выгрузку на сервер?
Evgeny
Канал 1gbit.sec 😂
вот в инстаграмме например довольно быстро большое колво фоток подгружается
Dmytro
@Multipart @POST("accounts/signin") Call<SimpleResponse> login( @Part MultipartBody.Part username, по логам http клиента вообще не отличается от @POST("accounts/signin") Call<SimpleResponse> login( @Body RequestBody body
https://futurestud.io/tutorials/retrofit-2-how-to-upload-files-to-server Посмотри тут. файл тут как MultipartBody.Part А вот обычную строку создают так String descriptionString = "hello, this is description speaking"; RequestBody description = RequestBody.create( okhttp3.MultipartBody.FORM, descriptionString); и в реквесте тогда поле как RequestBody
Dmytro
пробовал
но я не вчитывался, так пробежался. Может поможет, отпиши потом, интересно)
Ярослав
Ярослав
а у тебя какие-то хедеры особенные для этого запроса?
все кроме Content-Type я задаю сам в Interceptor'e
Tishka17
А кому важен порядок хэдеров?
Ярослав
А кому важен порядок хэдеров?
это называется танцы с бубном
Mike
наркомания
Konstantin
два вопроса
Dmytro
все кроме Content-Type я задаю сам в Interceptor'e
тоже думаю, что это не важно... Главное контент тайп не перекрывать. Тебе сервер сайд выдала список хедеров?
Konstantin
1. ui events vs interface+methods - что лудше 2. бывают утечки памяти с лямбдами?
Dmytro
которые я подставляю?
ну да, может ты перемудрил чет. Обычно с ретрофитом хедеры подставлять, если сервер сайд просит
Ярослав
ну да, может ты перемудрил чет. Обычно с ретрофитом хедеры подставлять, если сервер сайд просит
подставил те заголовки, которые есть в запросе от ios приложения. у них авторизация проходит, а у меня сервер данные не видит
Ярослав
Ярослав
почему-то сервер видит данные только в @POST("accounts/signin?username=name")
Konstantin
юзаю charlies proxy
ты че там изобретаешь
Konstantin
юзаю charlies proxy
@FormUrlEncoded @POST("/me/favorites") fun postFav(@Body fav:NewFavRequest): Single<Response<Success»
Ярослав
но curl -v -d "username=aaaaaaaa&password=bbbbbbbb" -X POST https://some-domain.com/accounts/signin/ работает, а curl -v -X POST https://some-domain.com/accounts/signin?username=name не работает
Konstantin
не надо в пост урл пихать параметры, в этот момент умирает 1 котик
Konstantin
потому что я тоже бэкендер и знаю че говорю
Konstantin
https://stackoverflow.com/questions/34562950/post-multipart-form-data-using-retrofit-2-0-including-image
Ярослав
такое ощущение, что я на разные сервера стучусь. но домен точно один и тот же
Konstantin
вот даже погуглил за тебя, там все написано, попробовал уже?
Konstantin
на сервер данные должны уходить, если ты их там не видишь значит просто не так смотришь скорей всего
Konstantin
зачем ты эти данные мультипартом посылаешь
Konstantin
мультипарт обычно для загрузки файлов, у тебя же просто текст
Ярослав
мультипарт обычно для загрузки файлов, у тебя же просто текст
у ios приложения: Content-Type: multipart/form-data; boundary=Boundary+900570AB90B6B321
Konstantin
у тя ретрофит, зачем те так делать. создай класс LoginRequest с 3 полям username, password, remember
Konstantin
заполняй его и посылай в Post как в примере
Mike
Давайте прекращать флуд. Никто не знает, как нужно посылать данные, и весь чат танцет с бубном.
Konstantin
c какими аннотациям параметры?
ни с какими просто сделай паблик свойство. 3 точнее. в аннотации к методу апи добавляй @FormUrlEncoded
Konstantin
чтобы отправился toString?
а да, эта аннотация если @Fields/@FieldMap юзаешь, ее тут не надо. либо просто @Post + @Body, либо @FormUrlEncoded + @Field/@FieldMap
Konstantin
бессовестно наврал человеку )
Aleksandr
доброго вечера, коллеги делал кто такую штуку?
Ярослав
а да, эта аннотация если @Fields/@FieldMap юзаешь, ее тут не надо. либо просто @Post + @Body, либо @FormUrlEncoded + @Field/@FieldMap
при FormUrlEncoded параметры просто склеиваются в username=xgdydyfyfyd&password=fyfydydyd&remember=off а не идут в boundary
Konstantin
ты на бэкенде чем разбираешь
Ярослав
ты на бэкенде чем разбираешь
у меня нет доступа к бэкенду, смотрю пакеты с помощью charlies proxy (прога такая с прокси для отладки)
Konstantin
а документация к апи есть?
Konstantin
сорян за тупой вопрос
Konstantin
ок, а какой ответ сервера то должен быть тогда
Konstantin
а, simpleResponse
Ярослав
ок, а какой ответ сервера то должен быть тогда
мне пишет что username'a нет вообще в запросе {"error":"Missed username"}
Konstantin
мне пишет что username'a нет вообще в запросе {"error":"Missed username"}
так, а ты можешь просто объект создать у себя LoginRequest как я писал, с 3 полями, и прислать его через @Body, убрав сверху @FormUrlEncoded?
Konstantin
нет, просто создай объект
Ярослав
нет, просто создай объект
так уже делал @POST("accounts/signin") Call<SimpleResponse> login( @Body RequestBody body );
Konstantin
и какая ошибка была
Konstantin
эта
как выглядит класс RequestBody этот ?
Ярослав
как выглядит класс RequestBody этот ?
он из пакета библиотеки okhttp3
Konstantin
он из пакета библиотеки okhttp3
public class LoginRequest { public String username; public String password; public String remember; public LoginRequest(String username, String password, String remember) { this.username = username; this.password = password; this.remember = remember; } } ты вот такой класс можешь у себя сделать и послать его как @Body ?
Mike
ребят, танцуйте с бубном где-нибудь не в техническом чате
Димас
Всем привет. При вызове датчика шагов и выводе в текствью, счёт начинается не с нуля, а с ~29000
Димас
Не подскажите, почему так,
Димас
?
Dmytro
Всем привет. При вызове датчика шагов и выводе в текствью, счёт начинается не с нуля, а с ~29000
так каждый день показывает? может это суммарное за день? неделю?