如何在.net Core Web api中编写一个post controller动作方法来调用外部api



我有一个端点url,请求json,响应json和外部api的身份验证令牌,现在我需要从我的控制器动作方法在中向此api发送请求。Net Core Web API.我无法从互联网上找到任何有用的参考来构建这个post controller action方法在。Net Core Web API.

我有一个端点url,请求json,响应json和外部api的身份验证令牌,现在我需要从。net Core Web api中的控制器动作方法向此api发送请求。

你可以参考下面的代码片段,用你的action方法发送的数据向另一个外部api发出请求。

var url = "https://xxx/xx/xx";
var jsondata = System.Text.Json.JsonSerializer.Serialize(${payLoad_here});
var content = new StringContent(jsondata, System.Text.Encoding.UTF8, "application/json");
_httpClient.DefaultRequestHeaders.Add("Authorization", $"bearer {your_token_here}");
var response = await _httpClient.PostAsync(url, content);
if (response.IsSuccessStatusCode)
{
var result = await response.Content.ReadAsStringAsync();
var data = System.Text.Json.JsonSerializer.Deserialize<MyTestModel>(result);
return Json(data);
}
return Json("Error");

您需要在Startup.cs中注册IHttpClientFactory和相关业务。

services.AddHttpClient();

有关"在ASP中使用IHttpClientFactory发出HTTP请求"的更多信息。. NET Core",请查看以下文档:

https://learn.microsoft.com/en - us/aspnet/core/fundamentals/http requests?view=aspnetcore - 5.0 #基本用法

最新更新