在 Web API 中调用外部 API 是非常常见的需求,它可以让你的应用程序获取其他服务提供的数据或执行特定的操作。
有时候需要在自己的 WebAPI中,再调用外部的 API,要实现这个功能,首先在 program.cs 中添加 HttpClient 服务。
// 添加 HttpClient 服务
builder.Services.AddHttpClient();
新建一个 CallController 控制器
在里面注入 HttpClient 工厂
继续在 CallController 控制器中创建 2 个 Get 方法,用其中一个,调用另一个。(模拟调用外部 API)
启动项目,在 Swagger 中调用 Test 方法,查看返回的结果。
显示的是 Test2 方法的返回值,说明调用外部 API 成功。
为了发起 post 请求时能有参数,先在项目中创建 Models 文件夹,并在文件夹中创建 Users.cs 类。
因为后面需要序列化对象,所以先安装 JsonConverter.Newtonsoft.Json
在 CallController 控制器中创建两个post方法,如下:
在 Swagger 中调用 CallController 中的 post1 方法,查看返回的结果。
显示的是 post2 方法的返回值,说明调用外部 API 成功。