Mehrteilige POST-Anfragen mit Volley und das Fehlen von HttpEntity
In Android API22 wurde HttpEntity veraltet und in API23 vollständig entfernt. Dieser Artikel enthält ein Arbeitsbeispiel zum Implementieren einer mehrteiligen POST-Anfrage mit Volley ohne HttpEntity. Die vorgeschlagene Lösung wird mit der Asp.Net-Web-API getestet.
Implementierungsdetails
Der Code besteht aus zwei Klassen:
MultipartActivity. java:
MultipartRequest. java:
Zusätzliche Funktionen
Text hinzufügen Teile:
Wie im bereitgestellten Code vorgeschlagen, kann man der mehrteiligen Anfrage mithilfe der getParams()-Methode Textteile hinzufügen:
@Override protected Map<String, String> getParams() { Map<String, String> params = new HashMap<>(); params.put("param1", "value1"); params.put("param2", "value2"); return params; }
Modularer Code für Wiederverwendbarkeit :
Um die Wiederverwendbarkeit zu verbessern, wurde der Code geändert überarbeitet:
class VolleyMultipartRequest extends Request<NetworkResponse> { // ... other methods @Override protected Map<String, DataPart> getByteData() { // ... code for adding byte parts } }
Verwendungsbeispiel:
VolleyMultipartRequest request = new VolleyMultipartRequest(Method.POST, url, new Response.Listener<NetworkResponse>() { // ... listener code }, new Response.ErrorListener() { // ... error listener code }) { @Override protected Map<String, String> getParams() { // ... } @Override protected Map<String, DataPart> getByteData() { // ... } };
Das obige ist der detaillierte Inhalt vonWie mache ich mehrteilige POST-Anfragen mit Volley in Android nach der Entfernung von HttpEntity?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!