HttpURLConnection.setDoInput
या HttpURLConnection.setDoOutput
का कार्य या उद्देश्य क्या है?जावा HttpURLConnection
उत्तर
प्रलेखन से URLConnection
के लिए:
अगर आप निवेश के लिए यूआरएल कनेक्शन, नहीं तो झूठी उपयोग करने का इरादा सच करने के लिए DoInput ध्वज सेट करें। डिफ़ॉल्ट सच है।
यदि आप आउटपुट के लिए यूआरएल कनेक्शन का उपयोग करना चाहते हैं तो गलत करने के लिए DoOutput ध्वज सेट करें, यदि गलत नहीं है। डिफॉल्ट गलत है।
वास्तविक उद्देश्य के लिए, ऐसा नहीं लगता है कि ओरेकल कोड में कुछ भी doInput
चर पर जांच करता है। हालांकि doOutput
गलत के डिफ़ॉल्ट आपको HTTP POST अनुरोधों के लिए आवश्यक getOutputStream()
पर कॉल करने से रोक देगा। तो यह समय से पहले इंगित करने का एक तरीका है कि आप वास्तव में इसे स्थापित किए बिना OutputStream
पर लिखने की उम्मीद करते हैं।
मैं अभी भी "इनपुट के लिए यूआरएल कनेक्शन का उपयोग करें" द्वारा प्रलेखन में क्या मतलब था, इस बारे में उलझन में था।
इसका मतलब यह हो सकता है कि आप प्रतिक्रिया से जानकारी पढ़ना चाहते हैं या आप इसके अनुरोध में जानकारी इनपुट करना चाहते हैं। दस्तावेज कहता है:
इनपुट और/या आउटपुट के लिए एक यूआरएल कनेक्शन का उपयोग किया जा सकता है। DoInput ध्वज को सही पर सेट करना इंगित करता है कि एप्लिकेशन URL कनेक्शन से डेटा पढ़ने का इरादा रखता है।
इस फ़ील्ड का डिफ़ॉल्ट मान सत्य है।
तो यदि आप प्रतिक्रिया से डेटा को अनदेखा करना चाहते हैं तो आप इनपुट को गलत पर सेट कर सकते हैं। यदि आप getInputStream() का उपयोग करना चाहते हैं तो आपको इसे अकेला छोड़ देना चाहिए या इसे सत्य पर सेट करना चाहिए।
इनपुट और/या आउटपुट के लिए एक यूआरएल कनेक्शन का उपयोग किया जा सकता है। डूऑटपुट ध्वज को सही पर सेट करना इंगित करता है कि एप्लिकेशन यूआरएल कनेक्शन में डेटा लिखना चाहता है।
इस फ़ील्ड का डिफ़ॉल्ट मान गलत है।
तो यदि आप अनुरोध पर डेटा संलग्न करना चाहते हैं (getOutputStream() को कॉल करना) तो आपको सही करने के लिए doOutput सेट करना होगा।
सुपरक्लास, URLConnection
द्वारा विधियों की घोषणा की जाती है। मुझे लगता है कि इरादा ठोस कार्यान्वयन में संभावित अनुकूलन को सक्षम करना था। याद रखें कि URLConnection
प्रोटोकॉल अज्ञेयवादी है (लेकिन HttpURLConnection
स्पष्ट रूप से नहीं है)।
'प्रोटोकॉल अज्ञेयवादी'? आपका मतलब क्या है? –
@YoushaAleayoub किसी भी विशिष्ट प्रोटोकॉल से जुड़ा नहीं है, जैसे HTTP या FTP। – haraldK
- 1. जावा HttpURLConnection - कुकी
- 2. जावा HTTPUrlConnection टाइमआउट
- 3. जावा: HTTP PUT HttpURLConnection
- 4. जावा में लगातार HttpURLConnection
- 5. जावा HTTPUrlConnection 500 स्थिति कोड
- 6. HttpURLConnection
- 7. HttpURLConnection
- 8. एक HttpURLConnection
- 9. जावा/एंड्रॉइड HttpURLConnection setChunkedStreamingMode सभी PHP सर्वर
- 10. जावा, HttpURLConnection और सामग्री की लंबाई
- 11. HttpURLConnection एंड्रॉयड
- 12. HttpURLConnection कार्यान्वयन
- 13. HttpURLConnection conn.getRequestProperty
- 14. HttpURLConnection टाइमआउट सेटिंग्स
- 15. एंड्रॉयड, httpurlconnection त्रुटि
- 16. एचटीपी एंड्रॉइड HttpURLConnection
- 17. HttpURLConnection ऑब्जेक्ट से पार्स JSON
- 18. एकाधिक आईपी के साथ जावा Httpurlconnection DNS रिज़ॉल्यूशन
- 19. HttpURLConnection डाउनलोड फ़ाइल का नाम
- 20. एंड्रॉइड पर डिफ़ॉल्ट एचटीपी क्लाइंट या HttpURLConnection
- 21. HttpURLConnection पर सामग्री प्रकार कैसे सेट करें?
- 22. SetFollowRedirects (बूलियन ऑटो) क्यों है HttpURLConnection
- 23. HttpUrlConnection के साथ प्रीपेप्टिव बेसिक ऑथ?
- 24. HttpURLConnection: कनेक्ट() को कॉल करना आवश्यक है?
- 25. HTTPClient या HttpUrlConnection का उपयोग करें?
- 26. curl और HttpURLConnection - पोस्ट JSON डेटा
- 27. HttpURLConnection का उपयोग कर HTTP प्रमाणीकरण को कैसे संभालें?
- 28. एंड्रॉइड/जावा: HttpURLConnection पुनर्निर्देशित फ़ाइल के शीर्षलेख (जैसे S3 पर) वापस नहीं करता है
- 29. क्या मैं जावा के HttpUrlConnection क्लास का उपयोग कर होस्ट हेडर को ओवरराइड कर सकता हूं?
- 30. जावा HttpUrlConnection में सीमा सामग्री की लंबाई प्राप्त हो रही है
हां मैंने प्रलेखन पढ़ा। बस समझ में नहीं आता "इनपुट के लिए यूआरएल कनेक्शन का उपयोग करने का इरादा जब सत्य और गलत नहीं है"। इसका वास्तव में क्या मतलब है? –
मैंने जो कुछ भी मुझे बताया उससे जवाब में थोड़ा और जोड़ा। – WhiteFang34
setDoInput (false) को तब कहा जाता है जब प्रतिक्रिया निकाय को अनदेखा किया जा रहा है। जावा कोर कोड इसे जेएक्सबी और एक्सएमएल सीरियलाइजेशन के लिए यूआरएल में कॉल करता है। देखें: com/sun/org/apache/xml/internal/serialize/DOMSerializerImpl.java और javax \ xml \ bind \ JAXB.java –