[Swagger] ASP.NET Core API x Swagger II

전회 ASP.NET Core API x Swagger 계속. 지난번에는 Swagger를 API 프로젝트에 추가하고 표시하는 곳까지 보았습니다. 오늘은 좀 더 앞서 보겠습니다.

기동시의 「Swagger」페이지 표시 지정



응용 프로그램을 시작한 후 Swagger 페이지를 보려면.
프로젝트의 시작 디렉토리를 지정해야 합니다. 기본값은 작업 디렉토리가/api/value이므로 프로젝트를 마우스 오른쪽 단추로 클릭하고 속성, 디버그 브라우저 시작을 비어 있음을 지정합니다.



요약



각 메소드의 이용 방법을 간단히 기재합니다.
/// <summary>
/// Redeem Coupon
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet("/Reddem/{id}")]
public IActionResult Redeem(string id)
{
  return NoContent();
}

Swagger에는 다음과 같이 설명됩니다.



리마크스


/// <summary>
/// Redeem Coupon
/// </summary>
/// <remarks>
/// This is remarks
/// </remarks>
/// <param name="id"></param>
/// <returns></returns>
[HttpGet("/Reddem/{id}")]
public IActionResult Redeem(string id)
{
  return NoContent();
}

Swagger에는 다음과 같이 설명됩니다.


응답이 json임을 표기합니다.



응답이 json임을 표시하려면 [Produces("application/json")]을 지정합니다.
[Produces("application/json")]
[Route("api/[controller]")]
[ApiController]
public class CouponController : ControllerBase
{
  /// <summary>
  /// Redeem Coupon
  /// </summary>
  /// <remarks>
  /// This is remarks
  /// </remarks>
  /// <param name="id"></param>
  /// <returns></returns>
  [HttpGet("/Reddem/{id}")]
  public IActionResult Redeem(string id)
  {
    return NoContent();
  }
}

Swagger에는 다음과 같이 설명됩니다.



응답 타입 표기



정상적으로 처리되면 200으로 값을 돌려줍니다만, 매번 정상적인 인풋 혹은 처리가 된다고는 할 수 없습니다. .

여기에서는 정상 처리 200과 입력값이 비어 있을 때의 응답 타입 400이 있는 것을 명기합니다.
/// <summary>
/// Redeem Coupon
/// </summary>
/// <remarks>
/// This is remarks
/// </remarks>
/// <param name="id"></param>
/// <returns></returns>
/// <response code="201">Returns text "hi"</response>
/// <response code="400">If id is null</response>
[HttpGet("/Reddem/{id}")]
[ProducesResponseType(201)]
[ProducesResponseType(400)]
public IActionResult Redeem(string id)
{
  if (string.IsNullOrEmpty(id))
  {
    return NotFound();
  }

  return Content("Hi");
}

좋은 웹페이지 즐겨찾기