Interfejs API, który próbuję wywołać, wymaga wykonania instrukcji POST, ale z pustą treścią. Jestem nowy w korzystaniu z HttpClient WCF Web API i nie mogę znaleźć kodu zapisu, który zrobiłby post z pustym ciałem. Znajduję odniesienia do niektórych metod HttpContent.CreateEmpty(), ale nie sądzę, że jest to dla kodu HttpClient Web API, ponieważ nie mogę znaleźć tej metody.Publikowanie pustego obiektu w interfejsie REST API za pośrednictwem HttpClient
Odpowiedz
Zastosowanie StringContent
lub ObjectContent
które wywodzą się z HttpContent
lub użyć null
jako HttpContent
(patrz this comment).
Praca z StringContent z pustym ciągiem zadziałała. Dzięki! –
Wygląda na to, że jest to tylko w .NET Framework 4.5? http://msdn.microsoft.com/en-us/library/system.net.http.stringcontent(v=VS.110).aspx – dan
Będzie dostarczany z interfejsem API WCF Web, ale myślę, że niektóre z "dobrych części" wejdzie w ramy. –
Myślę, że robi to automagicznie, jeśli twoja metoda sieciowa nie ma parametrów lub wszystkie pasują do szablonu adresu URL.
Na przykład deklaracja ta wysyła pusty ciała:
[OperationContract]
[WebGet(UriTemplate = "mykewlservice/{emailAddress}",
RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Wrapped)]
void GetStatus(string emailAddress, out long statusMask);
Próbuję wysłać puste ciało. Metoda HttpClient.Post() wymaga identyfikatora URI i obiektu HttpContent. Nie jestem tym, co przekazać jako HttpContent, gdy nie chcę niczego wysyłać. –
Więc nie używasz WCF. To jeszcze łatwiejsze: ... HttpWebRequest request = (HttpWebRequest) WebRequest.Create ("http: // ..."); request.Method = "POST"; HttpWebResponse respose = (HttpWebResponse) request.GetResponse(); ... możesz uzyskać odpowiedź –
Używam HttpClient, a nie HttpWebRequest. Używanie StringContent z pustym ciągiem działało. –
Czy to już wcześniej, po prostu keep it simple:
Task<HttpResponseMessage> task = client.PostAsync(url, null);
To jest czystsza niż zaakceptowana odpowiedź i powinna zostać poddana pod głosowanie. –
odkryli, że:
zadanie Task = client.PostAsync (url, null);
Dodaje wartość null do treści żądania, która nie powiodła się w przypadku WSO2. Zastąpiony:
Zadanie zadań = klient.PostAsync (adres URL, nowy {});
I działało.
- 1. Generowanie i publikowanie na podstawie REST API REST API
- 2. Dane Query HealthKit za pośrednictwem REST API
- 3. Wyniki pokrycia za pośrednictwem REST API
- 4. Jak dławić klientów w interfejsie API REST
- 5. Publikowanie w interfejsie WWW za pomocą metody HttpClient i interfejsu Web API Parametr [FromBody] kończy się jako null
- 6. Którego kodu HTTP użyć dla pustego podrejestru w interfejsie API REST?
- 7. Zapytanie obiektu złożonego MVC Web API za pośrednictwem GET
- 8. Lista maszyn wirtualnych platformy Azure za pośrednictwem interfejsu REST API
- 9. Uwierzytelnianie użytkownika za pośrednictwem mojego REST API i Facebooka
- 10. Jak uzyskać klucz tokenizacji w interfejsie Woocommerce Rest API?
- 11. Używanie czasowników HTTP LINK i UNLINK w interfejsie API REST
- 12. Utwórz niestandardową akcję w interfejsie API Yii2 Rest
- 13. Połącz dane wyjściowe z 2 zapytań w interfejsie API REST
- 14. Kolory etykiet Gmaila za pośrednictwem interfejsu API?
- 15. Sales Force Eksponowanie niestandardowych obiektów za pomocą REST API
- 16. Uwierzytelnianie za pomocą protokołu OAuth w interfejsie API sieci Web
- 17. Pobierz zawartość za pomocą interfejsu REST API REST API
- 18. HttpClient vs Spring Rest Template?
- 19. Publikowanie do domyślnej wymiany rabbitmq za pomocą api http api
- 20. Ulepszanie postu na Facebooku za pośrednictwem interfejsu API i odzwierciedlanie go w interfejsie użytkownika FB UI
- 21. Zaloguj się z Facebookiem w Android za pomocą REST API
- 22. Jak utworzyć wpis z danymi pustego json za pośrednictwem HTTPie?
- 23. Publikowanie obrazu z luki API
- 24. Publikowanie w ścianie znajomych za pomocą interfejsu Graph API za pośrednictwem połączenia "feed" nie działa od 6 lutego 2013 roku
- 25. Aktualizacja nie działa w interfejsie API SalesForce
- 26. WooCommerce REST API Niestandardowe pola
- 27. CosmosDb z API DocumentDB za pośrednictwem zarządzania API Azure
- 28. REST API Metoda logowania
- 29. Powracanie błędów w interfejsie API sieci Web
- 30. Zakup przez Amazon za pośrednictwem API
HttpContent.CreateEmpty pochodzi ze starego prototypu HttpClient, który był częścią zestawu startowego REST. Niestety nie ma odpowiednika w nowym HttpClient. –