Permintaan Berbilang Bahagian dengan Tampar Tanpa HttpEntity
Pengenalan
Dengan HttpEntity ditamatkan dalam API22 dan dialih keluar dalam API23, pembangun Android mungkin menghadapi cabaran apabila menghantar permintaan berbilang bahagian menggunakan Tampar. Artikel ini menyediakan sampel kod berfungsi untuk permintaan berbilang bahagian POST dengan Tampar tanpa menggunakan HttpEntity.
Kod Pelaksanaan
MultipartActivity.java:
package com.example.multipartvolley; // ... As before @Override protected void onCreate(Bundle savedInstanceState) { // ... As before byte[] fileData1 = getFileDataFromDrawable(context, R.drawable.ic_action_android); byte[] fileData2 = getFileDataFromDrawable(context, R.drawable.ic_action_book); ByteArrayOutputStream bos = new ByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(bos); try { // ... As before } catch (IOException e) { // ... As before } String url = "http://192.168.1.100/api/postfile"; MultipartRequest multipartRequest = new MultipartRequest(url, null, mimeType, multipartBody, new Response.Listener<NetworkResponse>() { @Override public void onResponse(NetworkResponse response) { // ... As before } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { // ... As before } }); // ... As before } // ... Remaining methods
MultipartRequest.java:
package com.example.multipartvolley; // ... As before @Override public String getBodyContentType() { return mMimeType; } @Override public byte[] getBody() throws AuthFailureError { return mMultipartBody; } // ... Remaining methods
Dikemas kini dengan Data Teks
Untuk memasukkan teks data dalam permintaan, anda boleh mengatasi kaedah getParams() dalam VolleyMultipartRequest:
@Override protected Map<String, String> getParams() { Map<String, String> params = new HashMap<>(); // Add your text parameters params.put("api_token", "gh659gjhvdyudo973823tt9gvjf7i6ric75r76"); params.put("name", "Angga"); params.put("location", "Indonesia"); return params; }
Kesimpulan
Kod yang disediakan menyediakan penyelesaian praktikal untuk menghantar permintaan berbilang bahagian dengan Tampar, walaupun selepas penamatan HttpEntity. Dengan menggunakan kaedah yang diterangkan dalam artikel ini, pembangun boleh MENYATAKAN berbilang fail dan data teks ke pelayan dengan mudah tanpa memerlukan pelaksanaan HttpEntity yang kompleks.
Atas ialah kandungan terperinci Bagaimana untuk Menghantar Permintaan Berbilang Bahagian dengan Tampar Selepas Penamatan HttpEntity?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!