Go 배우기 시도 - 다운로더 구축 파트 01

지난 몇 달 동안 저는 Go를 가지고 놀았고 그것을 즐겼습니다. 이제 약간의 여유 시간이 생겼으니 내 기술을 두 배로 강화할 시간입니다. 나는 또한 더 많이 쓰는 습관을 들이고 싶었고 이것은 절호의 기회입니다. 이제 다음 몇 개의 게시물에 걸쳐 작은 서버를 함께 해킹해 봅시다.

아이디어



내가 가진 가장 큰 문제 중 하나는 작업할 무언가를 생각해 내는 것입니다. 며칠 전부터 이 시리즈를 시작하고 싶었지만 무엇을 만들지 결정할 수 없었습니다. 몇 시간 안에 스켈레톤을 완성할 수 있을 만큼 작아야 합니다. 하지만 저를 더 많은 언어에 노출시키는 데 도움이 될 만큼 충분히 복잡해야 합니다. 나는 그것에 대해 생각하고 원격 서버에서 파일을 다운로드하는 간단한 서버를 설계하기로 결정했습니다. 아이디어는 실용적인 기원을 가지고 있으며 때때로 필요한 것을 볼 수 있습니다. 지금 당장은 필요하지 않지만 필요할 때 보관하고 나중에 다시 사용할 수 있는 것입니다. 내가 웹 페이지에 있는 경우 마우스 오른쪽 버튼을 클릭하고 메뉴 옵션을 선택하고 바로 다시 그것에 대해 생각할 필요가 없기를 원합니다. Dropbox처럼 파일 URL을 입력하고 다른 모든 작업을 처리하도록 할 수 있습니다.

물론 과잉처럼 보일 수도 있지만(아마도 그럴 것입니다) 작업할 프로젝트가 필요합니다...

높은 레벨



다운로더는 간단한 웹 애플리케이션이 될 것입니다. 프로젝트가 끝날 무렵 Let's Encrypt를 사용하여 앱에서 HTTPS를 제공하는 방법을 살펴보겠습니다. 이것은 일종의 아카이브이기 때문에 서버는 오프 사이트에 있습니다. 테스트를 위해 Google Compute 엔진의 마이크로 인스턴스가 작동합니다. 가능한 한 오랫동안 Gostandard library만 사용하려고 합니다. 이것은 결국 학습 연습입니다.

서버 자체로 시작하려면 두 개의 끝점이 있습니다.
http://<server>/
  • GET/- 간단한 서버 상태, 아마도 가동 시간.
  • http://<server>/download
  • PUT POST/다운로드 - 다운로드 세부 정보가 있는 JSON 개체를 수락합니다
  • .

    JSON 객체



    {
      "title": "Name of download (filename probably)",
      "location": "URL of download"
    }
    

    서버는 JSON을 수신하고 구문 분석한 다음 GET 요청을 발행하여 파일을 다운로드합니다. 검색되면 파일을 디스크에 저장합니다. 지금은 처음에 JSON 개체가 생성되는 방식에 대해 얼버무려 보겠습니다. 우리는 언젠가 그것에 대해 돌아올 것입니다. 기본 아이디어가 있으면 코드를 작성하고 각 작은 스프린트를 따라 작업하면서 수행 중인 작업을 문서화하려고 합니다.

    내일까지...

    게시되었습니다.

    GitHub의 리포지토리에서 이것과 대부분의 다른 Go 학습 시도 게시물에 대한 코드를 찾을 수 있습니다.


    신다쿤 / atlg


    Dev.to에 올린 "Attempting to Learn Go" 게시물의 소스 저장소





    Go 배우기 시도


    여기에서 내가 작성하고 게시한 Go 학습 시도 게시물에 대해 작성한 코드를 찾을 수 있습니다.

    포스트 색인



    게시하다
    암호



    -

    -

    -

    -

    -

    src

    src

    src

    src

    src

    src

    src

    src

    src

    src

    src

    src

    src

    src

    src

    위 코드 참조




    View on GitHub





    이 게시물을 즐기십니까?


    How about buying me a coffee?

    좋은 웹페이지 즐겨찾기