django로 채팅 프로그램을 만드는 중입니다! 질문있습니다!

조회수 3653회

웹에서 채팅프로그램을 만드는데 CHATTING ROOM 페이지로 이동해서 채팅을 진행하는 것이 아니라 facebook에서 채팅하는 것처럼 현재 보고있는 페이지에서 버튼 하나만 누르면 채팅창이 뜨면서 채팅을 할 수 있도록 구현하고 싶습니다.

이미지

이미 채팅 페이지는 따로 만들어놨는데 페이스북 처럼 채팅을 하려면 어떻게 만들어야 할까요? 참고할 만한 문서나 웹페이지가 있으면 알려주시면 좋겠습니다!

감사합니다.

  • (•́ ✖ •̀)
    알 수 없는 사용자

2 답변

  • 질문이 채팅창을 버튼을 누르면 열리게 하는 것을 구현하는 것이 아니라 채팅 구현이 궁금하신 거라고 생각이 됩니다.

    채팅창 열리고 닫히고는 자바스크립트로 구현하시면 됩니다.

    웹에서 채팅의 구현은 socket.io 또는 firebase 등으로 구현하실 수 있습니다.

    socket.io를 사용하실 경우 node.js 서버를 구동시켜야 합니다. 또한 메세지를 저장하거나 회원정보를 저장하는 database 도 추가로 필요하겠죠.

    firebase 를 사용하시면 서버나 DB등을 따로 구축할 필요없이 쉽게 채팅을 구현하실 수 있습니다. 다만 브라우저가 IE 10이상 지원되는 것으로 알고 있습니다. (socket.io는 IE 8이상, 그 이하도 지원되는 것으로 알고 있는데 테스트 해보지는 않았습니다.) 다만, firebase 는 유료 입니다. 물론 어느정도 제한이 있는 범위의 무료 서비스도 지원하고 있기 때문에 테스트 하거나 간단한 서비스를 올려볼 수 있습니다.

    • 채팅은 이미 django로 구현해 놓았습니다. 궁금한건 현재 보고있는 페이지에서 어떻게 채팅창을 열었다 닫았다 하는것인지가 궁금합니다. 알 수 없는 사용자 2016.5.15 16:04
    • 채팅 창 여닫는 것은 해당 채팅창 페이지를 숨겨놓았다가(css display : none 등으로) 자바스크립트나 제이쿼리 등으로 버튼에 이벤트를 추가하여 다시 보여지도록 하면 됩니다. 가령 제이쿼리 show / hide 로 말이죠. Manki Kim 2016.5.15 16:08
  • 말씀하신 부분을 완전히 구현하시려면 Django에서 다루는것이 아니라 프론트앤드쪽의 문제가 됩니다.

    Javascript / jQuery 등과 더불어 프론트앤드 프레임워크인 AngulaJs, Backbone.js, Ember.js 같은 것을 학습하시는것이 좋을것 같습니다.

    백엔드 부분은 윗분 말씀대로 node.js(socket.io), firebase 등을 이용해도 되지만 Django 만으로도 구현이 가능합니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)