Wenn ich eine Methode habe, die Daten an einen Endpunkt sendet, muss ich einen Bearer-Token verwenden, um diesen Anruf zu authentifizieren, der im Header der Anfrage gesendet wird.Senden eines Bearer-Tokens an einen Endpunkt, dann Validieren dieses Tokens
Say my Methode, die/zum/vom Endpunkt empfängt Daten sendet sieht wie folgt aus:
public async Task<string> PostGetAsync()
{
var uri = new Uri("https://localhost:44322/endpoint");
using (var client = new HttpClient())
{
var pairs = new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string>("Key", "Value")
};
var content = new FormUrlEncodedContent(pairs);
var response = await client.PostAsync(uri, content);
if (response.StatusCode != HttpStatusCode.OK)
{
return "Error posting KeyValue";
}
string responseString = response.Content.ReadAsStringAsync().Result;
JArray json = JArray.Parse(responseString);
try
{
var returnedJson = json[returnedData];
return returnedJson.ToString();
}
catch (Exception e)
{
return "Index is out of bounds";
}
}
}
Und die Methode, die ausgeführt wird, wenn dieser Endpunkt es diese aufgerufen wird:
public async Task<JsonResult> endpoint()
{
List<Example> items = new List<Example>();
NameValueCollection nvc = Request.Form;
string keyString = nvc["Key"];
try
{
items = await GetService.GetList(keyString);
}
catch (ServiceException se)
{
}
return Json(items, JsonRequestBehavior.AllowGet);
}
Wie I:
- Senden Sie ein Bearer-Token (benutzerdefinierte Speicherung in azure keyvault) an den Endpunkt.
- Validate dieses Token vom Endpunkt
ich keine Anfänger freundlich docs, dies zu tun gibt.