Visual Studio如何安装AI编程工具FittenCode,请浏览我另一篇的博文。
.1.开始提问:想学习webapi的创建和使用。基于c#语言、.net框架,使用VisualStudio2022
FittenCode写出了详细的操作步骤,按此步骤创建项目CoreDemo
2. 继续提问:你提到的控制器是做什么用的?
FittenCode给出了详细的解释,终于知道原来“控制器”Controller就是一个类,处理http的各类请求。而“动作”Action就是控制器里的方法。
FittenCode给出了一个更详细的示例,可以创建一个类WeatherForecastController.cs,直接拷贝到代码里。
using Microsoft.AspNetCore.Mvc;
namespace YourNamespace.Controllers
{
[ApiController]
[Route("api/[controller]")]
public class WeatherForecastController : ControllerBase
{
// GET: api/WeatherForecast
[HttpGet]
public IActionResult Get()
{
// 处理GET请求的逻辑
var forecast = new { Message = "Hello, World!" };
return Ok(forecast); // 返回200 OK响应,包含JSON数据
}
// GET: api/WeatherForecast/5
[HttpGet("{id}")]
public IActionResult Get(int id)
{
// 处理带有参数的GET请求
var forecast = new { Id = id, Message = "Hello, World!" };
return Ok(forecast); // 返回200 OK响应,包含JSON数据
}
// POST: api/WeatherForecast
[HttpPost]
public IActionResult Post([FromBody] string value)
{
// 处理POST请求的逻辑
return CreatedAtAction(nameof(Get), new { id = 1 }, value); // 返回201 Created响应
}
// PUT: api/WeatherForecast/5
[HttpPut("{id}")]
public IActionResult Put(int id, [FromBody] string value)
{
// 处理PUT请求的逻辑
return NoContent(); // 返回204 No Content响应
}
// DELETE: api/WeatherForecast/5
[HttpDelete("{id}")]
public IActionResult Delete(int id)
{
// 处理DELETE请求的逻辑
return NoContent(); // 返回204 No Content响应
}
}
}
3.直接启动运行
运行后,可以在网页中测试api方法
4.继续提问:如何部署
使用appsettings.json配置访问地址
你可以在appsettings.json
文件中添加配置,指定服务器地址和端口。例如:
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"Kestrel": {
"Endpoints": {
"Http": {
"Url": "http://localhost:5000"
}
}
}
}
选择一种简单的发布方式“文件夹”方式:
5.启动和访问
打开发布的文件夹,启动程序:
浏览器访问api方法: