>

asp.net 핵심 웹 API 프로젝트에서 EF7 및 저장 프로 시저를 사용하여 CRUD 작업을 구현하고 있습니다. get 메소드 구현을 마치고 insert 메소드를 남겼습니다. Postman을 사용하여 웹 메소드를 테스트하고 있습니다. Create에 대한 구현을 작성했지만 postman을 통해 정보를 게시 할 수 없어 컨트롤러의 Create 웹 메서드에 충돌하지 않습니다. 누군가 문제가 무엇인지 알려 줄 수 있습니까? 메소드 서명이 다른 것을 제외하고는 get 및 post의 경로는 동일합니다.

컨트롤러

public class MoviesController : Controller
{
    private readonly IMoviesRepository _moviesRepository;
    public MoviesController(IMoviesRepository moviesRepository)
    {
        _moviesRepository = moviesRepository;
    }
    [HttpGet]
    [Route("api/Movies")]
    public async Task<IActionResult> GetMovies()
    {
        var movies = await _moviesRepository.GetMovies();
        var results = Mapper.Map<IEnumerable<MoviesDto>>(movies);
        return Ok(results);
    }
    [HttpGet]
    [Route("api/Movies/{ID}")]
    public async Task<IActionResult> GetMovie(int ID)
    {
        var movie = await _moviesRepository.GetMovie(ID);
        var results = Mapper.Map<IEnumerable<MoviesDto>>(movie);
        return Ok(results);
    }

    [HttpPost]
    [ValidateAntiForgeryToken]
    [Route("api/Movies")]
    public IActionResult CreateMovie([FromBody] MoviesDto movies)
    {
        if (movies == null)
        {
            return BadRequest();
        }
        // Check if movie exists
        var movie =  _moviesRepository.GetMovie(movies.MovieId);
        if (movie == null)
        {
            return NotFound();
        }
        var results = Mapper.Map<Movies>(movies);
        if (ModelState.IsValid)
        {
             _moviesRepository.AddMovie(results);
        }
        return Ok(results);
    }
}

우체국


  • 답변 # 1

    이 문제는 해결되었습니다. 위조 방지 토큰을 제거해야했습니다

관련 자료

  • 이전 react native - 경로 동작을 구현해야하지만 방법을 모름
  • 다음 Lodash 하나 이상의 키로 필터링