본문 바로가기

C#

(14)
Blazor The request filtering module is configured to deny a request that contains a double escape sequence. 에러 해결방법 이중 인코딩(Double Escaping) 문제는 Blazor Server뿐만 아니라 ASP.NET MVC, WebForms 등 다른 ASP.NET 기반 애플리케이션에서도 발생할 수 있다.Blazor 에서 이 문제를 해결 하기 위해서는 아래와 같이 하면된다.1. 프로젝트 폴더 내에 숨긴 항목 파일을 표시한다.2. .vs -> 프로젝트명 폴더 -> config -> applicationhost.config 파일 접근3. 맨 밑에서 location 태그 안에 있는 system.webserver 태그에 아래 코드추가  이렇게 코드를 추가하면 프로젝트의 설정상 이중 인코딩 문자를 허용하겠다는 뜻이다.
[2] Blazor Web App 카카오 로그인 구현하기 - 인증 시스템 구현 https://kpadong.tistory.com/38 [1] Blazor Web App 카카오 로그인 구현하기 - 초기설정 및 토큰 받기blazor로 카카오 로그인 구현 관련해서 검색을 해보면 죄다 Springboot , Next.js 등 자바 계열로 카카오 로그인 구현 아니면 프로젝트를 생성할 때부터 인증 유형에서 개별 계정으로 생성한 프로젝트kpadong.tistory.com이전 글에 이어받은 토큰을 통해 프로젝트 내에 인증을 적용하는 방법을 구현해 보도록 하겠다.이 글에서는 Blazor Web App 인증 구현 중 쿠키를 통한 구현을 사용했다.먼저 Program.cs 에 아래의 코드를 추가한다.builder.Services.AddAuthentication(CookieAuthenticationDef..
[1] Blazor Web App 카카오 로그인 구현하기 - 초기설정 및 토큰 받기 blazor로 카카오 로그인 구현 관련해서 검색을 해보면 죄다 Springboot , Next.js 등 자바 계열로 카카오 로그인 구현 아니면 프로젝트를 생성할 때부터 인증 유형에서 개별 계정으로 생성한 프로젝트에서 카카오 키를 추가해서 만드는 방법밖에 나오지 않았다.필자는 카카오 로그인을 인증 유형이 없는 상태에서의 blazor Web App에서 구현을 해보고 싶었기에 시도하게 되었다.카카오 로그인을 하기 위해서는 일단 kakao developers 에 접근을 하고 설정을 해주어야 한다.설정해줘야 하는 항목은 다음과 같다. 1. 애플리케이션 추가하기kakao developers 에 로그인하고 내 애플리케이션에 들어가면 애플리케이션 추가하기라는 버튼을 클릭하면 위 사진과 같은 팝업이 뜬다. 정보를 채워 ..
Razor 확장자 아래 css 파일 구조 만드는 방법 Blazor 프로젝트를 처음 생성하면은 아래 사진과 같이 css파일이 razor 파일 하단에 포함되어있는 구조로 생성되어 있음을 볼수있는데 이걸 공식 문서상 CSS 격리 라고 말한다.기존에 적용되어 있는 파일 외에 위 사진과 같은 구조로 새로운 razor 파일로 해당 구조를 만들려면 아래와 같이 진행하면된다.1. 추가하려는 폴더 우클릭 -> 추가 ->  razor 구성요소 -> 이름 입력후 생성 ex) StyleTest.razor2. razor 파일 추가한 폴더 우클릭 추가 -> 스타일시트 -> 동일한 이름 입력후 확장자를 razor.css 로 둔다 ex) StyleTest.razor.cssblazor 기능상 그리고 해당 css가 파일에 적용되려면 스타일 시트 참조에위 코드 처럼 프로젝트명.styles...
Blazor Web App에서 동적 사이트맵(sitemap) 생성하기 웹페이지를 게시하거나 할때 sitemap.xml 파일을 설정하는 것은 필수이다.그런데 동적 사이트맵 만들기를 검색하면 죄다 "Next.js 에서 동적 사이트맵 만들기" 이런 키워드 밖에 나오질 않았다.Blazor 자체가 정보가 많이없기도 하지만 Blazor 에서 동적 사이트맵 만드는 방법이라는 키워드로 나오는 글이 하나도 없었기에 필자가 만든 방법을 소개하려고 한다. 필자의 페이지 구조는 https://도메인/고정페이지/{Parameter} 이런식으로 파라미터가 들어가는 형식인데 파라미터 부분에 들어갈 페이지를 DB에 저장해두고 있었다.그렇기에 사이트맵을 만들려면 로직이1. sitemap.xml 진입2. db조회하여 url 로 만들 파라미터 가져오기3. 정적페이지 + db조회하여 만든 동적 페이지 합쳐서..
Blazor Web App DbContext 코드 간소화하기 Blazor 에서 DbContext 를 사용한다고하면 이제 대표적인 예시가 아래와같은데public class MyDbContext : DbContext{ public MyDbContext(DbContextOptions options) : base(options) { } public DbSet 클래스1 { get; set; } public DbSet 클래스2 { get; set; } public DbSet 클래스3 { get; set; } public DbSet 클래스4 { get; set; }} 위 코드와 같이 클래스들을 반복해서 DbSet 선언을 해주는 것이 기본 사용 방법이다근데 저게 한두라인이면 괜찮지만 수십개 수백개가 되면은 DbContext 선언..
Window Server .Net Core Console 한글 깨짐 해결 방법 .Net Core 콘솔 앱을 윈도우 서버에서 실행하려고 실행을 했는데 콘솔창에 한글이 ??? 이라고 표시되는 현상이 발생했다.그래서 .Net Core 콘솔 문제인가 싶어서 찾아봤는데 해결방법이 한가지 나왔었다. System.Text.Encoding.CodePages Nuget 패키지를 설치하고Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);해당 코드를 추가하는 방법이였는데 해결되지 않았다. 그래서 콘솔앱 문제가 아닌가 싶어서 Window Server에서 콘솔 한글 깨짐이라는 키워드로 찾아봤더니 Window Server 에서 비슷한 사례가 있었다.해결방법은 아래와 같다.제어판에서 사진과 같은 메뉴를 선택한다.클릭하게 되면 위와 같은 팝업이 뜨는..
Blazor Failed to connect via WebSockets, using the Long Polling fallback transport. 경고 메세지 해결 Blazor 프레임워크로 웹 개발을 하고 배포를 하고 나면 콘솔창에 이제위 와 같은 경고 문구가 떠있는 경우가 있는데 경고 내용은 WebSockets 을 연결하지 못했다. Long Polling 을 사용한다. 이런 내용이다.뒤에 붙어 있는 링크로 들어가보면Host and deploy ASP.NET Core server-side Blazor apps | Microsoft Learn Host and deploy ASP.NET Core server-side Blazor appsLearn how to host and deploy server-side Blazor apps using ASP.NET Core.learn.microsoft.com중간에 아래와 같은 내용이있다.Blazor는 짧은 대기 시간, 더 나은 안..