Ich versuche, die folgende Locke (die für mich funktioniert) in C# mit HttpClient.Wie verwende ich HttpClient zum Posten mit Authentifizierung
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
Der C# Code:
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;
}
Wenn er ausgeführt wird, nur stürzt heraus, nicht sogar die Ausnahme abfangen
Ich bin in der Lage zu GET und POST völlig in Ordnung Normalerweise, aber was mir Abwerfen ist, wie die Auth Stuff (Client-ID und Client-Secret)
Was meinst du abstürzt? Führst du das in VS? Haben Sie Ausnahmen für die erste Chance aktiviert? –
Werfen Sie einen Blick auf diesen Stackoverflow Beitrag, um zu sehen, ob es hilft: http://Stackoverflow.com/a/23914662/1337635 – joehanna
könnten Sie bitte Ihren Code einschließlich Methodensignatur posten. –