강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của an0731aa7485
an0731aa7485

câu hỏi đã được viết

Tạo GPT của riêng bạn với Azure Native

Tích hợp Mặt trận và API

webpubsub연결 오류

Đã giải quyết

Viết

·

140

0

강의 잘 듣고있습니다. 이번 강의에서 front와 API를 연결하는 작업 도중, 계속 마지막에 토큰까지는 잘 받아오지만 웹소켓을 못 만드는 문제가 발생했습니다. 문제가 무엇일까 계속 고민해보다가 이 강의 가장 처음에 강사님이 진행했던 =을 붙이는 작업이 떠올라 그 =을 다시 지워줬습니다. 그런데 해결이 됐습니다.

제 키에는 =가 마지막에 없더라구요... =가 있는 경우와 없는 경우가 존재하나봅니다. =의 차이가 혹시 무엇인지 알 수 있을까요? 그냥 암호의 일부분일까요?

javascriptpythonmongodbazureFastAPI

Câu trả lời 2

0

movingshape님의 프로필 이미지
movingshape
Người chia sẻ kiến thức

답변이 늦어 죄송합니다. 퇴근하고 답변드리려했는데, 야근을 하는 바람에 잊어버렸네요.....

해당 작업은 단순히 API Key를 그대로 옮겨오는 과정입니다. 그대로 옮겨오면 되는데, 저는 더블클릭을 통해서 복사 하려다가 = 문자가 누락되어 붙여준 것 뿐입니다.

 

키에 =가 왜 붙어있는건지는 AI 인턴의 답을 참조하시면 됩니다. 키가 base64로 인코딩 되어있는 듯 한데, base64 인코딩의 패딩에 관련하여 찾아보시면 좋을 것 같습니다.

 

수강 정말 감사드리고, 남은 강의들도 화이팅입니다!

 

0

안녕하세요, 인프런 AI 인턴입니다.

안현준님께서 강의에서 프론트와 API를 연결할 때 웹소켓 문제로 어려움을 겪으셨군요. 말씀하신 “=`“의 존재 여부에 따른 차이는 기본적으로 Base64 인코딩 과정에서 발생하는 일입니다.

  1. Base64 인코딩 이해하기:

    • Base64는 데이터를 텍스트로 인코딩하는 방식입니다. 인코딩될 데이터는 3바이트씩 그룹화되며, 3바이트가 4개의 Base64 문자로 변환됩니다.
    • 데이터의 길이가 3바이트의 배수가 아닐 경우, 출력이 4문자의 배수가 되어야 하므로, 패딩 문자 "="가 추가됩니다. 따라서 =는 단지 패딩을 나타내는 문자일 뿐이며, 인코딩의 정확성을 유지하기 위해 사용됩니다.
  2. =의 중요성:

    • =는 Base64 인코딩된 데이터의 무결성을 확인하는 데 중요한 역할을 하지만, 그 자체로는 데이터의 의미를 변하지 않습니다. 필요한 경우에는 패딩이 있어야지만, 특정 케이스에서는 필요하지 않을 수도 있습니다.
  3. 웹소켓이나 API에 대한 영향:

    • 웹소켓 연결에는 주로 토큰 기반 인증이 사용되며, 이러한 토큰은 일반적으로 Base64로 인코딩됩니다. 만약 가져온 키나 토큰에 =가 포함되어 있다면, 이는 인코딩 완료된 문자열의 무결성을 유지하기 위한 것입니다.

같은 문제로 웹소켓 연결 과정 중 토큰에 패딩이 필요한지 여부는 연결 시 요구되는 특정한 포맷의 문제일 수 있습니다. 어려운 상황 속에서도 해결 방법을 찾아내신 점, 대단히 칭찬해 드리고 싶습니다!

관련된 기존 질문과 답변이 있으면 많은 도움이 될 수 있습니다. 다른 분들의 경험이 도움이 될 수 있으니 참고해보세요.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của an0731aa7485
an0731aa7485

câu hỏi đã được viết

Đặt câu hỏi