| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- RunWith
- JPA
- jdbc
- 좋은 객체지향 설계 원칙
- Not Acceptable
- 빈 스코프
- SpringBootTest
- 스프링 IoC 컨테이너
- 스프링 데이터 JPA
- 키움
- 405 METHOD_NOT_ALLOWED
- jdbc template
- 406 NOT_ACCEPTABLE
- Controller
- 테스트 코드
- 의존관계 자동 주입
- restTemplate
- 의존성 주입
- entity
- 통합 테스트
- 기본 생성자
- 가을야구
- 정적 컨텐츠
- ResponseEntity
- 스프링 컨테이너
- 스프링
- testresttemplate
- 랜덤 포트
- 컴포넌트 스캔
- Java Reflection API
- Today
- Total
코드네임 JY
[Meteor] parent 함수의 개념 / Meteor 서버 상에서의 보안 본문
Q1. Button 안에 Image가 왜?

이 코드는 화면상에서 어떻게 보여지냐면

자세하게 보면, button#mybtn 이 img.card-img-top 보다 큰 것을 알 수 있다.

위 코드의 의미는 해당 event를 가지고 있는 요소들을 누르면, 그 요소에 포함된 value 값을 가져오라는 뜻이다.
ex) <button id="btn_click" value="0"> ... </button>
→ 해당 button 태그에 저 위 코드를 적용하면, 버튼을 눌렀을 때
저 button 태그의 value값 즉, "0" 이라는 값을 가져올 수 있다.
다시 돌아와서,

위 코드는 아래와 같이 표현되고,

여기서 내가 button 태그에 있는 value 값을 부르고 싶어서
그냥 $(evt.target).attr('value') 하면 되겠네 라고 생각하고 막상 결과를 보면

'undefined' 라는 결과가 나오게 된다...ㅠㅠㅠㅠㅠㅠ
왜냐하면, 우리가 클릭한 것은 Button이 아닌 Image기 때문이다... 음...?
1. 우리는 Image를 선택했고,
2. 그 결과로 $(evt.target) 에는 Image를 선택했다는 이벤트가 들어가게 되는데,
3. Image에는 value라는 값이 없으니 당연히 undefined 라는 오류가 발생하게 되는 것이었다...
따라서 위와 같은 문제를 해결하려면!!

.parent() 라는 친구를 붙여주면 되는데
이 친구의 역할은 "부모의 것으로 옮겨준다" 라고 생각하면 된다.
다시 말해서, Button 안에 Image를 클릭했지만, .parent( ) 를 통해서 Button으로 대상을 옮기는 것이다!!
그러면 위 그림처럼 나오는 결과가 달라지게 되고 내가 원하는 button 태그의 value값을 가져올 수 있게 된다!!
Q2. Meteor 서버 상에서의 보안
이걸 내가 왜 궁금해 했냐면
A라는 사용자가 사진을 업로드 할 때, A의 id를 같이 올림으로써
나중에 '사진 상세보기' 챕터에서 A의 id로 이메일을 불러와 나타날 수 있도록 하였다.
하지만 B라는 id로 접속했을 때, A의 id는 확인할 수 있지만 A의 이메일은 확인할 수 없다...

0번과 그 외 사용자들의 차이를 봐봅시다. 0번은 emails가 있는 반면, 나머지 사용자들은 나타나지 않는다.
지금 대표님께서 만들어주신 Meteor 플랫폼에서는, 자신의 email 정보만 확인할 수 있도록 하였다.
왜냐하면 맘만 먹으면 다른 사람의 email, 심지어는 비밀번호 등의 개인정보까지 콘솔창에서 확인할 수 있기 때문이다.
물론 처음 서버를 만들 때 이와 같은 조건을 풀어주면 되지만,
보안상의 이유로 자신의 이메일 밖에 확인할 수 없도록 만들어 놓은 것이다...
이상 오늘의 질문 끝 ㅎㅂㅎ
'백엔드 공부' 카테고리의 다른 글
| [스프링 입문] API (0) | 2022.12.05 |
|---|---|
| [스프링 입문] 정적 컨텐츠, MVC & 템플릿 엔진 (0) | 2022.12.05 |
| [스프링 입문] 프로젝트 환경설정 (0) | 2022.12.05 |
| [Meteor] HTML에서 Session의 사용 (0) | 2020.02.17 |
| [Meteor] MongoDB에서 Meteor.user() 연결하는 방법 (0) | 2020.02.02 |