okhttp loggin interceptor in multipart

9

Ich versuche ein Bild mit okHTTP multi part in einen Server hochzuladen. Der Server akzeptiert meine Anfrage nicht. Mein Problem ist, dass ich die Teile meines Multi-Teils nicht im Logging-Intercepter sehen kann, also kann ich nicht debuggen. Hier ist der Code, den ich verwende und die reelling log cat und die gewünschte Nutzlast. jede Hilfe wird geschätzt.

%Vor%

und das sehe ich in der Log-Katze, wenn ich einen Interceptor verwende

  

D / OkHttp: - & gt; POST Ссылка http / 1.1

     

D / OkHttp: Content-Type: multipart / form-data;   Grenze = a8028055-3a30-4942-916b-af56935e8b32

     

D / OkHttp: Inhaltslänge: 14097   D / OkHttp: cookie: ************************
  Domäne = .appido.ir; abläuft = Di, 23-Aug-2016 13:31:11 GMT; Pfad = /

     

D / OkHttp: Gastgeber: www.appido.ir

     

D / OkHttp: Verbindung: Keep-Alive

     

D / OkHttp: Accept-Encoding: gzip

     

D / OkHttp: Benutzer-Agent: okhttp / 3.4.1

     

D / OkHttp:   h gTRC lumi 07-25 07: 47: 49.163   7776-8509 / com.androidbuts.uploadimage D / OkHttp: | meas 07-25   07: 47: 49.163 7776-8509 / com.androidbuts.uploadimage D / OkHttp:    $ bkpt 07-25 07: 47: 49.163   7776-8509 / com.androidbuts.uploadimage D / OkHttp: rXYZ

     

und dieses Kauderwelsch geht für viele Zeilen weiter

     

D / OkHttp: - & gt; END POST (14097 Byte Körper)

Wie kann ich eine aussagekräftige Protokollkatze sehen? Ich möchte das wissen:

  

------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowChunkNumber"

     

1   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowChunkSize"

     

1048576   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowCurrentChunkSize"

     

23016   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowTotalSize"

     

23016   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowIdentifier"

     

23016-60x60music2_smalljpg   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="Flussdateiname"

     

60x60music2_small.jpg   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowRelativePath"

     

60x60music2_small.jpg   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="flowTotalChunks"

     

1   ------ WebKitFormBoundaryJDdhM3Si8enJZABA Content-Disposition: Formulardaten; name="Datei"; filename="Blob" Inhaltstyp:   application / octet-stream

     

------ WebKitFormBoundaryJDdhM3Si8enJZABA -

    
milad zahedi 25.07.2016, 08:54
quelle

2 Antworten

-2

Es scheint ein Fehler im Logging-Intercepter zu sein.

Ich konnte dieses Problem lösen, indem ich den Logging-Intercepter austaue. Das Problem ist, dass der Körper für mehrere Teile zu groß ist und der Iterzeptor nicht so einen großen Körper auf einmal darstellen kann. es muss Zeile für Zeile gedruckt werden. Hier ist die modifizierte Version auf Logging Intercepter, die mit mehrteiligen funktioniert in okhttp 3.4.1:

%Vor%

}

    
milad zahedi 06.09.2016, 06:42
quelle
6

Um den Inhalt eines Multipart-Uploads von Okttp und Retrofit zu sehen, verwenden Sie Stetho auf Facebook und fügen StethoInterceptor dem Okhttp-Logger hinzu

Ссылка

Damit werden die Netzwerkanforderungen der Android-App im Chrome-Inspektor Ihrer Entwicklungsmaschine angezeigt.

    
CQM 31.08.2016 17:16
quelle