Rumah > Java > javaTutorial > Bagaimana untuk Membuat Permintaan POST Berbilang Bahagian dengan Tampar dalam Android Selepas Pembuangan HttpEntity?

Bagaimana untuk Membuat Permintaan POST Berbilang Bahagian dengan Tampar dalam Android Selepas Pembuangan HttpEntity?

Linda Hamilton
Lepaskan: 2024-11-30 18:17:12
asal
905 orang telah melayarinya

How to Make Multipart POST Requests with Volley in Android After HttpEntity's Removal?

Permintaan POST Berbilang Bahagian dengan Tampar dan Ketiadaan HttpEntity

Dalam API22 Android, HttpEntity telah ditamatkan dan dialih keluar sepenuhnya dalam API23. Artikel ini menyediakan sampel yang berfungsi untuk melaksanakan permintaan berbilang bahagian POST dengan Tampar tanpa HttpEntity. Penyelesaian yang dicadangkan diuji dengan API Web Asp.Net.

Butiran Pelaksanaan

Kod ini terdiri daripada dua kelas:

MultipartActivity. java:

  1. Menghuraikan fail boleh dilukis menjadi bait tatasusunan.
  2. Membina badan permintaan berbilang bahagian dengan tatasusunan bait.
  3. Mencipta objek MultipartRequest dan menambahkannya pada baris gilir permintaan.

MultipartRequest. java:

  1. Melanjutkan kelas Permintaan dan melaksanakan kaedah yang diperlukan.
  2. Mengendalikan pengepala permintaan, jenis kandungan dan kandungan.
  3. Menghuraikan respons rangkaian dan menyampaikannya kepada pendengar.

Ciri Tambahan

Menambah Teks Bahagian:

Seperti yang dicadangkan dalam kod yang disediakan, seseorang boleh menambah bahagian teks pada permintaan berbilang bahagian menggunakan kaedah getParams():

@Override
protected Map<String, String> getParams() {
    Map<String, String> params = new HashMap<>();
    params.put("param1", "value1");
    params.put("param2", "value2");
    return params;
}
Salin selepas log masuk

Kod Modular untuk Kebolehgunaan Semula :

Untuk meningkatkan kebolehgunaan semula, kod tersebut telah difaktorkan semula:

class VolleyMultipartRequest extends Request<NetworkResponse>  {

    // ... other methods

    @Override
    protected Map<String, DataPart> getByteData() {
        // ... code for adding byte parts
    }
}
Salin selepas log masuk

Contoh Penggunaan:

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() {
        // ...
    }
};
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Membuat Permintaan POST Berbilang Bahagian dengan Tampar dalam Android Selepas Pembuangan HttpEntity?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan