एपीआई मैं फोन करने के लिए कोशिश कर रहा हूँ के माध्यम से बाकी एपीआई के एक खाली शरीर की आवश्यकता है कि मैं एक पोस्ट है, लेकिन एक खाली शरीर के साथ। मैं डब्ल्यूसीएफ वेब एपीआई एचटीपी क्लाइंट का उपयोग करने के लिए नया हूं और मुझे ऐसा लिखने वाला कोड नहीं दिख रहा है जो खाली शरीर के साथ एक पोस्ट करेगा। मुझे कुछ HttpContent.CreateEmpty() विधि के संदर्भ मिलते हैं, लेकिन मुझे नहीं लगता कि यह वेब एपीआई HttpClient कोड के लिए है क्योंकि मुझे वह विधि नहीं मिल रही है।पोस्ट HttpClient
उत्तर
उपयोग StringContent
या ObjectContent
जो HttpContent
से निकाले जाते हैं या आप HttpContent
रूप null
(this comment देखें) का उपयोग कर सकते हैं।
Task<HttpResponseMessage> task = client.PostAsync(url, null);
एक खाली स्ट्रिंग के साथ स्ट्रिंगकंटेंट का उपयोग करना। धन्यवाद! –
ऐसा लगता है कि यह केवल .NET Framework 4.5 में है? http://msdn.microsoft.com/en-us/library/system.net.http.stringcontent(v=VS.110).aspx – dan
यह डब्ल्यूसीएफ वेब एपीआई के साथ भेज देगा लेकिन मुझे लगता है कि कुछ "अच्छे हिस्से" इसे ढांचे में ही बना देगा। –
मैं यह है कि वे सभी URL टेम्प्लेट में फिट स्वतः यदि आपका वेब विधि कोई पैरामीटर है या क्या करता है लगता है।
उदाहरण के लिए इस घोषणा खाली शरीर भेजता है:
[OperationContract]
[WebGet(UriTemplate = "mykewlservice/{emailAddress}",
RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped)]
void GetStatus(string emailAddress, out long statusMask);
मैं एक खाली शरीर भेजने की कोशिश कर रहा हूँ। HttpClient.Post() विधि के लिए एक यूआरआई और एक HttpContent वस्तु की आवश्यकता है। मैं कुछ भी नहीं भेजना चाहता हूं जब मैं HttpContent के रूप में पास करने के लिए नहीं हूँ। –
तो आप डब्ल्यूसीएफ का उपयोग नहीं कर रहे हैं। ... HttpWebRequest अनुरोध = (HttpWebRequest) WebRequest.Create: यह और भी आसान है ("http: // ..."); अनुरोध। विधि = "पोस्ट"; HttpWebResponse respose = (HttpWebResponse) request.GetResponse(); ... आप प्रतिक्रिया –
में परिणाम मैं HttpClient उपयोग कर रहा हूँ, नहीं HttpWebRequest। एक खाली स्ट्रिंग के साथ स्ट्रिंगकंटेंट का उपयोग करना काम किया। –
इस से पहले, बस इसे सरल रखने के क्या
टास्क कार्य = client.PostAsync (यूआरएल, नल);
अनुरोध निकाय में शून्य जोड़ता है, जो डब्ल्यूएसओ 2 पर विफल रहा। इसके साथ प्रतिस्थापित:
कार्य कार्य = क्लाइंट.पोस्टएसिंक (यूआरएल, नया {});
और काम किया।
यह स्वीकृत उत्तर से क्लीनर है, और इसे वोट दिया जाना चाहिए। –
मिल गया है कि:
- 1. HttpClient
- 2. HttpClient
- 3. HttpClient HttpResponseMessage पता/URI
- 4. HttpClient 4.1.1
- 5. HttpClient NoClassDefFoundError
- 6. प्रकार HttpClient
- 7. ASP.NET WebAPI: कैसे WebAPI HttpClient
- 8. एंड्रॉइड: वेबव्यू और httpclient
- 9. Asp.net WebAPI HttpClient जोरदार PostAync
- 10. समापन HttpClient timout पहले कनेक्शन
- 11. अपाचे के httpclient
- 12. httpclient 4.x कनेक्शन
- 13. .net HttpClient कस्टम JsonConverter
- 14. HttpClient प्राप्त स्थिति कोड
- 15. बाकी सी # httpClient
- 16. मल्टी-थ्रेडिंग httpclient
- 17. एसएसएल "पीयर नहीं प्रमाणीकृत" त्रुटि HttpClient 4.1
- 18. HttpClient 3.x से 4.x
- 19. अपाचे HttpClient फेंकता एक NoClassDefFoundError
- 20. बाइट के लिए HTTPClient PostMethod []
- 21. HttpClient में लॉगिंग चालू करना
- 22. जेनेरिक पोस्ट Microsoft.HttpClient और HttpContentExtensions
- 23. एंड्रॉयड पोस्ट खाली प्रतिक्रिया
- 24. सी # HttpClient FormUrlEncodedContent एन्कोडिंग (वीएस 2012)
- 25. AFNetworking - कैसे पोस्ट अनुरोध
- 26. जावा: http पोस्ट अनुरोध
- 27. एंड्रॉइड में सुरक्षित HTTP पोस्ट
- 28. मैं कैसे HttpClient के HttpRequestMessage पर एक कुकी
- 29. हो रही NullPointerException कॉमन्स-httpclient और EWSJavaAPI
- 30. Apache HttpClient में nonProxyHosts सेट करें 4.1.3
HttpContent.CreateEmpty वर्ष HttpClient प्रोटोटाइप कि बाकी स्टार्टर किट का हिस्सा था से था। दुर्भाग्य से नए HttpClient में कोई समकक्ष नहीं है। –