분류 전체보기
-
[3~4일차] firebase Authentication를 이용한 OAuth 방식 로그인/로그아웃 구현 진행프로젝트 개발/뮤직플레이어 웹앱 2021. 2. 9. 22:59
지난시간에는 대략 적인 재생화면 뼈대만 만들어봤었다. 이번에는 firebase에서 제공하는 인증(Authentication) 기능을 사용해 로그인/로그아웃 구현을 진행했다. firebase에는 OAuth 를 제공하는 업체의 로그인 기능을 손쉽게 사용할 수 있도록 구현해 두었다. (물론 네이버, 다음 같은 서비스는 제공되지 않는다) 인증을 구현한 이유는 확인되지 않은 사람이 URL을 알아내 접근하여 음악을 받을 수 있는 문제를 사전에 차단하기 위함이다. 로그인/로그아웃 구현에 참조한 소스는 아래와 같다. https://fireship.io/lessons/react-firebase-chat-app-tutorial/ React Firebase Chat App Learn the basics of React & ..
-
[Git] .gitignore 에 추가했지만 여전히 commit이 동작할때 해결법ETC 2021. 2. 9. 18:40
오픈소스이지만 테스트를 위해 민감정보가 될 수 있는 설정값이 포함된 프로젝트의 경우, 별도의 설정값을 모듈이나 별도의 파일로 분리시킨 뒤 호출하여 사용하게 개발하고, 해당 파일을 git에 무시되도록 설정해야할 필요가 있다. 그때 .gitignore에 해당 파일의 경로를 입력하면 무시가 되는데, 빈 파일이라도 커밋정보가 포함된 경우가 존재한다면 .gitignore가 동작하지 않을 때가 발생한다. 그럴때는 아래 명령어로 캐시를 지워야한다. git rm -r --cached 개인개발 프로젝트가 오픈소스인데, firebaseConfig 와 같은 민감정보가 올라가버리면 문제가될 수 있어 commit 전 제거설정을 확인하던 중 알게되었다. 출처는 아래와 같다. https://stackoverflow.com/ques..
-
[1~2일차] 기술스택 선정 및 Material-UI 로 대략적인 화면 구성프로젝트 개발/뮤직플레이어 웹앱 2021. 2. 7. 22:16
iPhone을 사용하는데 맥북은 없고, 앱스토어에서 앱을 받아쓰자니 믿음이 안가 웹앱 방식으로 개발해서 음악 재생 서비스를 만들겠다는 지극히 개인적인 목적으로 시작했다. 그런데 글을 쓰면서 개발을 진행해보니 귀차니즘이 어느정도 누그러지는 듯하다. 그래서 본격적인 개발 프로젝트에 대한 진척과 뻘짓을 기록하고자 카테고리를 따로 생성했다. 프로젝트 가능여부를 확인하기위해 react + firebase 서비스를 이용해 indexed DB를 활용한 테스트용 음악 재생 웹앱을 만들어 보았었다. 테스트 과정은 아래 포스트를 참조해주기 바란다. https://ddochea.tistory.com/86 [javascript] 브라우저의 indexedDB 및 WebSQL을 손쉽게 사용할 수 있는 localForage 라이브..
-
[Javascript] React 웹 앱 Firebase에 호스팅하기Javascript & TypeScript 2021. 2. 4. 23:17
firebase + React를 이용해 스트리밍 음악 웹앱 개발 가능여부를 체크하기위한 프로젝트가 어느덧 막바지 단계에 들어왔다. 이전 포스트를 통해 진행했던 React 테스트 웹 페이지를 firebase에 호스팅 해 볼 차례이다. 지난시간 글은 아래 링크로 확인가능하다. https://ddochea.tistory.com/87 [javascript] blob으로 저장된 미디어파일 재생처리 지난 시간에 firebase storage에 저장된 음악파일을 blob 형식으로 받아 indexdDB에 저장하는 기능을 구현했었다. 해당내용은 아래 포스트를 통해 확인할 수 있다. https://ddochea.tistory.com/86 [javascript].. ddochea.tistory.com 이번시간엔 호스팅을 통..
-
[Javascript] blob으로 저장된 미디어파일 재생처리Javascript & TypeScript 2021. 2. 2. 21:48
지난 시간에 firebase storage에 저장된 음악파일을 blob 형식으로 받아 indexdDB에 저장하는 기능을 구현했었다. 해당내용은 아래 포스트를 통해 확인할 수 있다. https://ddochea.tistory.com/86 [javascript] 브라우저의 indexedDB 및 WebSQL을 손쉽게 사용할 수 있는 localForage 라이브러리 개인 프로젝트로 firebase + react + (필요에 따라 node 호스팅?)를 이용해 브라우저 기반 스트리밍 mp3 플레이어를 개발해보려고 하고 있다. 아직 본작업은 아니고 될지 안될지 따져보는 중이다. 음악 ddochea.tistory.com 파일을 받았으니 이번엔 재생을 다뤄볼 차례이다. blob 형식을 재생하는 방법은 의외로 쉽게 찾을 ..
-
[Javascript] 브라우저의 indexedDB 및 WebSQL을 손쉽게 사용할 수 있는 localForage 라이브러리Javascript & TypeScript 2021. 2. 1. 23:35
개인 프로젝트로 firebase + react + (필요에 따라 node 호스팅?)를 이용해 브라우저 기반 스트리밍 mp3 플레이어를 개발해보려고 하고 있다. 아직 본작업은 아니고 될지 안될지 따져보는 중이다. 음악 파일을 캐싱하고싶은데 localStorage에 저장하려니 크기제한이 있어 실패했다. indexedDB는 써본적이 없어 모질라 개발자 홈페이지에서 확인하던 중, indexedDB를 쉽게 사용할 수 있는 라이브러리를 소개하길래 한번 찾아가 보았다. localForage/localForage: 💾 Offline storage, improved. Wraps IndexedDB, WebSQL, or localStorage using a simple but powerful API. (github.com)..
-
[.NET] AppContext.BaseDirectory 와 Environment.CurrentDirectory 위치 차이점 및 유의사항.NET/개념 및 유용한 팁 2021. 2. 1. 18:45
닷넷으로 개발하는 사람들중에서 현재 프로그램이 실행되는 위치를 가져와야하는 경우가 발생할 수 있다. 그럴때 AppContext.BaseDirectory 또는 Environment.CurrentDirectory를 사용하게 될 것이다. 간단한 Console 프로젝트를 만든 뒤, 해당 소스처럼 작성하고 디버깅해보자. 이름은 ConsoleApp1 이라고 지었다. class Program { static void Main(string[] args) { Console.WriteLine("Console App1"); Console.WriteLine(AppContext.BaseDirectory); Console.WriteLine(Environment.CurrentDirectory); } } 실제 실행결과는 스크린샷과 ..
-
[.NET] 메모리가 폭발하는 ClosedXML.NET/유용한 라이브러리 2021. 1. 30. 14:34
지난시간엔 상업 목적으로도 사용할 수 있는 ClosedXML 라이브러리에 대해 소개했었다. https://ddochea.tistory.com/83 [.NET] 상업 목적에서도 무료로 사용할 수 있는 엑셀(Excel) 편집 라이브러리 ClosedXML 소개. (feat. EPPlu .NET에서 엑셀을 다룰 때 주로 어떤 라이브러리를 쓰는가? Interop? EPPlus? Interop은 과거에 설정에 애먹었던 기억이 있으며, Excel이 설치되어있는 환경에서만 사용가능했던 것으로 기억하고 있다. (옛 ddochea.tistory.com 무료로 쓸 수 있다는 메리트와 고소당할 수 있는 EPPlus에 대한 경각심을 위해 작성했었는데 ClosedXML에는 한 가지 큰 문제가 있다. 메모리를 너무 많이 쓴다. 아..