23.03.15 TIL – 프로젝트 3일차

백엔드 작업을 본격적으로 시작했습니다.

1일과 2일에 임시 파일로 서버 구성을 스케치할 때 염두에 두었던 구조는

각 구성원의 상세 페이지는 별도의 HTML 파일을 생성하고 각 구성원을 사용자 정의하여 꾸며집니다.

각 상세 페이지 HTML에 CRUD용 데이터 요청 스크립트를 포함시켰습니다.

지원하면서 알게 된 사실

이렇게 하면 팀이 아닌 사이트 방문자가 CRUD 기능에 더 쉽게 액세스할 수 있습니다.

디스플레이: 없음; 같은 속성으로 숨길건데 검사창에서 끄면 충분합니다.

보다 근본적인 구조 개선이 필요했습니다.

1. 문제

일반 페이지 방문자가 CRUD 기능에 쉽게 접근할 수 없도록 페이지 간 연결 구조를 개선해야 합니다.

2. 시도

첫 번째 시도에서 카드 상세보기 창에서 비밀번호 확인 프로세스를 입력하십시오.

카드 추가 창에 비밀번호 인증 과정을 따로 두는 구조를 생각해 냈습니다.

CRUD 기능으로 접근한 경로는 상세페이지 화면의 지도 추가 버튼을 통해 접근하거나,

지도 세부 정보 뷰포트에서 두 개의 액세스 경로를 만들어야 한다는 것이 분명했습니다.

다만, 회원이 아닌 사이트 방문자에게 비밀번호 입력란이 불필요하게 노출되는 부분

서버에서 비밀번호를 확인하는 부분과 통과여부를 상세페이지 스크립트에서 받아 처리하는 부분으로 인해

일반 사이트 방문자가 CRUD 기능에 액세스할 수 있는 또 다른 문제가 있었습니다.

그래서 상세보기 창, 비밀번호 확인 창, CRUD 실행 창

별도의 HTML 파일을 만들어 iframe 팝업으로 열어서 수정했습니다.

3. 해상도

각 회원의 세부정보 페이지 또는 카드 세부정보 보기와 연결된 비밀번호 확인 창에서 추가 버튼을 클릭합니다.

독립 실행형 HTML 파일이고 URL 값 또는 매개 변수 값이 올바르게 전송되지 않는 경우

변경하거나 삭제하려는 데이터를 찾을 수 없도록 구성되어 있습니다.

따라서 수정하거나 삭제할 데이터의 object_id 값을 모르면 수정하거나 삭제할 수 없습니다.

추가의 경우 추가 창을 여는 매개변수 값을 정확히 입력하지 않으면 추가 버튼이 보이지 않습니다.

https://github.com/NullisnotFalse/cheese_project

GitHub – NullisnotFalse/cheese_project

GitHub에서 계정을 만들어 NullisnotFalse/cheese_project 개발에 기여하세요.

github.com

4. 학습

사이트 링크 구조를 상상하면서 불필요한 접근을 구조적으로 방지하는 방법

동시에 기능에 접근할 때 사용자 편의성을 어떻게 높일 수 있을지 고민하는 좋은 기회였습니다.