मुझे एक HTTP पोस्ट मल्टीपार्ट प्राप्त करने की आवश्यकता है जिसमें केवल 2 पैरामीटर हैं:
- एक JSON स्ट्रिंग
- एक बाइनरी फ़ाइल
शरीर को सेट करने का सही तरीका कौन सा है? मैं Chrome REST कंसोल का उपयोग करके HTTP कॉल का परीक्षण करने जा रहा हूं, इसलिए मैं सोच रहा हूं कि क्या JSON पैरामीटर और बाइनरी फ़ाइल के लिए "लेबल" कुंजी सेट करना सही है।
सर्वर साइड पर मैं Resteasy 2.x का उपयोग कर रहा हूं, और मैं इस तरह मल्टीपार्ट बॉडी को पढ़ने जा रहा हूं:
@POST
@Consumes("multipart/form-data")
public String postWithPhoto(MultipartFormDataInput multiPart) {
Map <String, List<InputPart>> params = multiPart.getFormDataMap();
String myJson = params.get("myJsonName").get(0).getBodyAsString();
InputPart imagePart = params.get("photo").get(0);
//do whatever I need to do with my json and my photo
}
क्या यह रास्ता है? क्या यह कुंजी "myJsonName" का उपयोग करके मेरे JSON स्ट्रिंग को पुनः प्राप्त करने के लिए सही है जो उस विशेष सामग्री-स्वभाव की पहचान करता है? क्या इन 2 सामग्री को एक HTTP मल्टीपार्ट अनुरोध में प्राप्त करने का कोई अन्य तरीका है?
अग्रिम में धन्यवाद