Próbuję wykonać następujące czynności zwijania (który pracuje dla mnie) w C# za pomocą HttpClient.Jak korzystać HttpClient do post z uwierzytelnianiem
curl -X POST http://www.somehosturl.com \
-u <client-id>:<client-secret> \
-d 'grant_type=password' \
-d 'username=<email>' \
-d 'password=<password>' \
-d 'scope=all
C# Kod:
HttpClientHandler handler = new HttpClientHandler { Credentials = new
System.Net.NetworkCredential ("my_client_id", "my_client_secret")
};
try
{
using(var httpClient = new HttpClient(handler))
{
var activationUrl = "www.somehosturl.com";
var postData = "grant_type=password&[email protected]&password=mypass&scope=all";
var content = new StringContent(postData, Encoding.UTF8, "application/x-www-form-urlencoded");
var response = await httpClient.PostAsync(activationUrl, content);
if(!response.IsSuccessStatusCode)
return null;
var result = await response.Content.ReadAsStringAsync();
return result;
}
}
catch(Exception)
{
return null;
}
Po wykonaniu po prostu zawiesza się, nie robi nawet złapać wyjątek
Normalnie jestem w stanie GET i POST perfekcyjnie, ale co jest rzucanie mnie jest jak ustawić auth rzeczy (ID klienta i klient tajne)
Co masz na myśli przez awarie? Czy używasz tego w VS? Czy włączono wyjątki z pierwszej szansy? –
Spójrz na ten post Stackoverflow, aby sprawdzić, czy to pomaga: http://stackoverflow.com/a/23914662/1337635 – joehanna
Czy możesz wysłać swój kod, w tym podpis metody. –