इससे पहले कि मैं इस प्रश्न को पोस्ट करने से पहले, मैंने इंटरफेस विधि से ऊपर @Multipart
जोड़ने की कोशिश की है और स्टैक ओवरफ्लो में खोज अभी भी मेरी समस्या के समान नहीं मिल सकता है।@ पार्ट पैरामीटर का उपयोग केवल मल्टीपार्ट एन्कोडिंग के साथ किया जा सकता है। (पैरामीटर # 8)
इस मामले में, मैं सर्वर पर TypedFile
का उपयोग करके छवि भेजने का प्रयास करता हूं। इस तरह मेरे इंटरफेस विधि नज़र:
@Headers({"Content-type: application/json"})
@POST("/user/change")
void postChange(@Query("name") String name, @Query("email") String email, @Query("password") String password, @Query("phone") String phone, @Query("user_id") String userId, @Query("address[]") String[] listAddress, @Query("head[]") String[] head, @Part("photo_profile") TypedFile photoProfile, @Body TypedInput jsonObject, Callback<ReceiveDTO> callback);
संपादित
कि विधि में हम @Part
और @Body
देख सकते हैं। अगर मैं विधि ऊपर @Multipart
जोड़ने के लिए, यह हम एक त्रुटि फेंक होगा @Body parameters cannot be used with form or multi-part encoding. (parameter #9)
मैं उपयोग कर रहा हूँ पुराना वापस 1.9
मैं यहाँ उदाहरण का अनुसरण सुझाव है - https://futurestud.io/blog/retrofit-2-how-to-upload-files-to-server समस्या आप कर रहे हैं के साथ बहुखण्डीय और फिर संपादित प्रश्न का उपयोग कर –