본문 바로가기
728x90
반응형

웹개발지식쌓기55

[back] Java JSON 2뎁스 이상 구조 만들기 api로 데이터를 보내기 위해 json구조를 java에서 만들어야 했음 java 단에서 JSON object 를 만들 수 있는 방법은 여러가지인데 JSONObject.put() 메소드를 이용해보았다. String으로 String json = "{ \"depth1\" : { .... 이런식으로 짜는 것보다 좋은 듯 중간에 if로 분기문도 넣을 수 있음 import org.json.JSONObject; public static void main(String[] args) { JSONObject jsonObject = new JSONObject(); JSONObject jsonObject2 = new JSONObject(); jsonObject2.put("depth2", "true"); jsonObject.p.. 2022. 11. 30.
[front] 없는 함수 호출하면 그 아래 부분은 싹 다 작동 중지된다.. 운영 업무 중 사고쳤다....................... 없는 함수 호출하면 undefined가 뜨고 지나가는 줄 알았다.. 하지만 그게 아니고 그 아래 부분은 싹 다 작동 중지된다 ㅠㅠㅠㅠㅠㅠㅠ 몰랐다는 거슨 비겁한 변명이다 코어 프로세스 javascript 에서 핵심 소스 작동하기 전에 초기화하는 짧은 소스를 추가했는데 거기가 뻑나서 그 아래 핵심소스 작동하는 부분이 아예 먹통이 됐다 function save(){ this.noExistFunction(); console.log("확인"); } 대략 이 구조에서 noExistFunction(); 이 없는 함수인데 save() 함수를 작동시켰을 경우 Uncaught TypeError: this.noExistFunction is not a func.. 2022. 11. 25.
[front] 페이지 우클릭 방지하기 <body oncontextmenu="return false"> 회사 웹페이지 중 새창을 띄우는 html의 body 태그에 이 속성이 붙어있길래 확인해본 내용 우클릭을 방지한다고 한다. 딱히 body에만 붙일 수 있는 것은 아니고, 다른 모든 요소에도 붙일 수 있는 것 같다. 그럼에도 불구하고 왜 body에다 먹이느냐? body에 먹여놔야 꼼수 복사를 막을 수 있기 때문. 1. 태그 속성값 1-1. oncontextmenu="return false" [드래그 선택 가능, 우클릭 불가] 우클릭 방지 기능. 드래그 선택은 가능하지만 우클릭 했을 때 창이 나타나지 않는다. 1-2.onselectstart="return false" [드래그 선택 불가, 우클릭 가능] 드래그 해서 선택하는거 방지 ** 다만, 다른 드래그 선택 가능한 요소가 있다면 그 요소부터 긁었을때는 드래.. 2022. 11. 1.
크롬 인스펙터 사용 (:모바일 앱 콘솔 확인하기) 모바일 웹에서는 정상적으로 나오는데 모바일 앱에서는 제대로 안나오는 경우가 있다. 모바일 웹이야 개발자도구를 켜서 모바일 모드로 전환하면 디버깅할 수 있는데 모바일 앱은 네이티브로 개발된 내용이 있으면 모바일 웹으로는 확인이 불가능함... 이런 경우 크롬 인스펙터를 이용할 수 있다. 1. 크롬 인스펙터를 킨다. chrome://inspect/#devices 2. 모바일 기기를 컴퓨터에 연결(충전용 잭 x/데이터전송가능한 잭 o) 그럼 Remote Target이 뜨는데, 여기에 연결된 기기가 떠야한다. 근데 인스펙터가 인식할 수 있는 앱을 실행하지 않으면 remote target에 안 뜰 수 있다. 3. 모바일 기기에서 디버깅 확인 할 앱 실행(테스트 목적으로 일단 chrome 앱 실행) 그래서 일단 아무.. 2022. 10. 26.
[back] java에서 ajax 통신인지 확인하는 소스 back 단에서 요청을 받았을 때, 해당 요청이 ajax 통신일 경우 인터셉터의 로직 수행을 건너뛰게 해야했다. 로직 초반에 아래의 소스 삽입 String ajaxRequest = request.getHeader("x-requested-with"); if ("XMLHttpRequest".equals(ajaxRequest)){ // ajax 통신은 소스를 진행하지 않는 경우 return; } 리퀘스트 객체를 받아 header 요소 중 "x-requested-with" 값을 가져오는데 값이 NULL이면 AJAX 통신이 아니고, 값이 "XMLHttpRequest" 이면 AJAX 통신이다. 참조 https://ohgyun.com/346 X-Requested-With header 발생일: 2011.12.19 문제.. 2022. 10. 26.
MyBatis - selectOne으로 가지고 올 때 result가 null인 경우 selectOne으로 가지고 올 때, result가 null인 경우 mybatis 매퍼.xml에서 resultType을 int 가 아닌 Integer 로 받아줘야 한다. int 로 받으면 DAO단에서 null 오류가 뜬다 보통 resultType을 int로 쓸 때는, 카운트 쿼리와 함께 리스트를 조회하고 결과 값을 가져왔었는데 이번 케이스는 내가 특정 조건에 맞는 코드값(PK도 아닌 단순 숫자)만 불러와야 했다. 그래서 resultType을 int로 하려고 했는데 오류남..! 예를 들면 내가 '나만의 소스'라는 테이블에 데이터를 넣을 수 있고, 나는 소스 인덱스만 보여주고 싶은 상황 SELECT MY_SRC_INDEX FROM MY_SRC WHERE MBR_ID = #{memberId} resultTyp.. 2022. 10. 21.
톰캣 충돌 Several ports (8006, 8080) required by Apache Tomcat v9.0 (D) at testProject are already in use 가끔 이클립스가 먹통이어서 강제로 프로그램 종료하고 다시 돌려보면 이런 오류가 뜸 이클립스는 종료됐지만 톰캣은 살아있는 경우이며, 톰캣 서버 포트도 종료시켜주면 된다 1. 윈도우 - 명령 프롬프트 실행 2. 명령 프롬프트에서 netstat 명령어를 통해 네트워크 접속 상태를 확인 3. netstat -a -n -o -p tcp 명령어 치기 그럼 이렇게 나오는데 여기서 8080 포트가 달려있는 데이터의 PID(process ID) 확인하기 * 옵션에 대한 정보는 netstat + 아무 텍스트나 치면 나오긴 한다. 4. 프로세스 아이디로 주겨버리기 : taskkill /f /pid 25348 여기까지 하고 서버를 다시 돌려보면 정상적으로 작동한당 2022. 10. 21.
Zoom Api 사용해보기 - 3 [Webhook] 이전에 썼던 내용과 비슷하게, 테스트용으로 웹훅 앱을 사용해본다. 왜 웹훅이냐면 무료니ㄲr...☆ 웹훅이란 : 역방향 api. 특정 이벤트 발생 시 내가 설정한 url로 데이터를 보내줌. 일반적으로 api사용 시 내가 api의 url을 호출해서 데이터를 당겨와서 사용하는데, 웹훅은 그 반대이다. 내가 데이터를 받을 url을 설정해두면 특정 작업이 일어날 때 알아서 그 url로 데이터가 들어온다. 1. App 생성 https://marketplace.zoom.us/ zoom marketplace 접속 로그인 - build app - Webhook Only 선택 대츙 테스트 컴패니를 써줍니다.. 2번째 화면에서 맨 밑에 "Event Subscriptions" 텍스트 오른쪽의 버튼을 살포시 눌러주면 아래의 이.. 2022. 8. 31.
Zoom Api 사용해보기 - 2 [JWT] 1. App 생성 https://marketplace.zoom.us/ zoom marketplace 접속 로그인 - build app - JWT 선택 next 버튼 누르다보면 아래와 같은 설정 페이지를 지나 앱이 만들어지게 된다. 여기서 제일 하단의 JWT Token을 사용했음. 참고로 token 의 Expiration Time 은 최대한 길게 설정해두는 게 좋은 것 같다. 만료되면 다시 저 페이지에 가서 재발급 해야되더라 😅 2. 사용할 api 찾기 아까 앱 생성할 때 페이지에서, create 버튼 옆에 'learn more' 이라는 클릭링크가 있었는데 요것을 누르면 가이드 페이지로 가진다. 여기서 API Reference 클릭!! 그럼 아래 페이지가 나오는 데 여기서 다시 zoom meeting ap.. 2022. 8. 30.
Zoom Api 사용해보기 - 1 1. 줌 페이지 접속 https://marketplace.zoom.us/ -줌 마켓플레이스에 접속 -로그인 후 Develop 탭 > Build App 선택 2. 사용하려는 앱 타입 선택 나도 다 써본 건 아니지만 구글링해가면서 정리를 해보자면.. 1) Zoom Apps : 줌앱에 기능 추가(예- donation 기능, 설문조사 기능 등 특정 기업이 본사 기능을 줌에 추가하고 싶은 경우) 2) JWT : JWT == JSON Web Tokens. JSON 으로 개발자의 인증데이터를 토큰형태로 주고받으면서 인증된 사용자의 계정으로 zoom 의 api를 사용 3) OAuth : JWT와 인증방식이 다를 뿐 인증된 사용자의 계정으로 zoom api를 사용한다는 점 동일 4) Chatbot : 모르겠다. 챗봇을 .. 2022. 8. 29.
728x90
반응형