Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 스프링부트
- SQL Server 구성 관리자
- MSSQL
- ERROR_MESSAGE
- java
- springboot
- 스프링 시큐리티
- 자바
- DB
- C#
- ORM
- IT
- SOP
- 권한
- 데이터베이스
- SQL Server
- jpa
- cors
- .NET 8.0
- System.Text.Json
- SSMS
- Newtonsoft.Json
- 프로시저
- RAISERRR
- JavaScript
- Exception in thread "main" java.lang.Error
- github
- IT story
- git
- OUT 파라미터
Archives
- Today
- Total
its_jh_stroy
[C#] ASP.NET Core에서 CORS 문제 해결하기 본문
ASP.NET Core에서 CORS 문제 해결하기
현재 사용중인 버전은 .NET 8.0이라는 것을 참고한다.
오류 발생
웹 개발 공부를 위해 프로젝트를 구성하던 중 문제가 발생하였다.
프론트엔드와 백엔드를 서로 다른 프로젝트로 분리했는데 자바스크립트에서 아래와 같은 오류가 발생한 것이다.
No 'Access-Control-Allow-Origin' header is present on the requested resource
위 오류메시지는 웹 브라우저의 개발자 도구 - 콘솔에서 확인할 수 있다.
이것은 동일 출처 정책(Same-Origin-Policy)때문에 일어난 오류이다.
동일 출처 정책에 관한 자료는 아래 링크를 잠고한다.
동일 출처 정책(SOP)과 교차 출처 리소스 공유(CORS) (tistory.com)
따라서 다른 도메인에서도 접근할 수 있도록 별도의 CORS 설정이 필요하다.
CORS 미들웨어 추가하기
문제 해결을 위해 Program.cs에서 CORS 미들웨어를 추가해야 한다.
아래 코드는 모든 출처에 대해 접근을 허용하는 설정이다.
// Programs.cs 파일에 추가
// 정책 이름 지정
var MyAllowSpecificOrigins = "_myAllowSpecificOrigins";
builder.Services.AddCors(options =>
{
options.AddPolicy(name: MyAllowSpecificOrigins,
policy =>
{
policy.AllowAnyOrigin();
policy.AllowAnyHeader();
policy.AllowAnyMethod();
});
});
// CORS 미들웨서 추가
app.UseCors(MyAllowSpecificOrigins);
'C#' 카테고리의 다른 글
[C#] Docker를 통해 ASP.NET Core 8.0 배포하기 (0) | 2024.09.21 |
---|---|
[C#] C#으로 MongoDB Atlas 연결하여 사용하기 (0) | 2024.03.28 |
[C#] System.Text.Json과 Newtonsoft.Json (0) | 2024.01.30 |
[C#] .NET 8.0이 실행되는 과정 (0) | 2024.01.15 |
[C#] WorkerService 작업자 서비스 프로젝트에서 의존성 추가하기 (0) | 2023.12.13 |