bluejoyq

complete search loading

...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
2 "devToolsPort": 19002, 2 "devToolsPort": 19002,
3 "expoServerPort": 19000, 3 "expoServerPort": 19000,
4 "packagerPort": 19001, 4 "packagerPort": 19001,
5 - "packagerPid": 14964, 5 + "packagerPid": 24884,
6 "expoServerNgrokUrl": "https://s4-47j.anonymous.searchguide.exp.direct", 6 "expoServerNgrokUrl": "https://s4-47j.anonymous.searchguide.exp.direct",
7 "packagerNgrokUrl": "https://packager.s4-47j.anonymous.searchguide.exp.direct", 7 "packagerNgrokUrl": "https://packager.s4-47j.anonymous.searchguide.exp.direct",
8 - "ngrokPid": 3788 8 + "ngrokPid": 25980
9 } 9 }
......
1 +{
2 + "return_code": 0,
3 + "return_data": {
4 + "originalText": "경희대학교",
5 + "korean": {
6 + "errata_count": 0,
7 + "origin_html": "경희대학교",
8 + "html": "경희대학교",
9 + "notag_html": "경희대학교"
10 + },
11 + "fixedText": "경희대학교",
12 + "keywordText": "경희대학교",
13 + "morps": {
14 + "originalMorp": [
15 + {
16 + "id": 0,
17 + "lemma": "경희대학교",
18 + "type": "NOG",
19 + "position": 0,
20 + "weight": 0.15
21 + }
22 + ],
23 + "needMorp": [
24 + [
25 + {
26 + "id": 0,
27 + "lemma": "경희대학교",
28 + "type": "NOG",
29 + "position": 0,
30 + "weight": 0.15
31 + }
32 + ]
33 + ],
34 + "noNeedMorp": []
35 + },
36 + "searchResults": [
37 + {
38 + "title": "서울캠퍼스 캠퍼스 목록...",
39 + "passage": "서울캠퍼스 캠퍼스 목록 서울캠퍼스 국제캠퍼스 경희대학교 / 공식",
40 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
41 + "confidence": "0.607079"
42 + },
43 + {
44 + "title": "경희대학교 / 열기...",
45 + "passage": "경희대학교 / 열기 사이트 내 검색 저장된 페이지 웹메일 대학 입학/편입학 대학 입학처 캠퍼스안내 교내전화번호 서울특별시 동대문구 회기동 위치, 사립종합대학교, 학과정보, 입학정보, 교통안내 등 제공.",
46 + "url": "https://www.khu.ac.kr/",
47 + "confidence": "0.240005"
48 + },
49 + {
50 + "title": "경희대학교 - 나무위키...",
51 + "passage": "경희대학교 - 나무위키 /w/경희대학교 열기 사이트 내 검색 저장된 페이지 학교법인 경희학원 고등교육기관 경희대학교 경희사이버대학교 중등교육기관 경희고등학교 경희여자고등학교 경희중학교 경희여자중학교 초등교육기관 유아교육기관 산하기관 경희초등학교 경희유치원 경희의료원 강동경희대병원 사실 재단... 나무위키",
52 + "url": "https://namu.wiki/w/%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
53 + "confidence": "0.278372"
54 + },
55 + {
56 + "title": "/w/경희대학교 열기 사이트...",
57 + "passage": "/w/경희대학교 열기 사이트 내 검색 저장된 페이지",
58 + "url": "https://namu.wiki/w/%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
59 + "confidence": "0.235229"
60 + },
61 + {
62 + "title": "경희대학교 - 나무위키...",
63 + "passage": "경희대학교 - 나무위키 /w/경희대학교 열기 사이트 내 검색 저장된 페이지 학교법인 경희학원 고등교육기관 경희대학교 경희사이버대학교 중등교육기관 경희고등학교 경희여자고등학교 경희중학교 경희여자중학교 초등교육기관 유아교육기관 산하기관 경희초등학교 경희유치원 경희의료원 강동경희대병원 사실 재단... 나무위키",
64 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
65 + "confidence": "0.278372"
66 + },
67 + {
68 + "title": "경희대학교 의과대학·의학전문대학원 /...",
69 + "passage": "경희대학교 의과대학·의학전문대학원 / 열기 사이트 내 검색 저장된 페이지 교수소개 의과대학 대학 공지사항 대학소개 편입학 의과대학, 국내 정상 향해 진일보 '2019 THE 세계대학평가 임상, 전임상 및 보건' 부문 국내 5위 차지 Towards Global Eminence 경희... 강동경희대학교병원 인산… 폐암 치료 위한 새로운 단백질 분석 방법 개발 의과대학 이승현 교수(사진)와 응용과학대학",
70 + "url": "https://khusm.khu.ac.kr/",
71 + "confidence": "0.161266"
72 + },
73 + {
74 + "title": "경희대학교 서울시 동대문구와...",
75 + "passage": "경희대학교 서울시 동대문구와 경기도 용인시에 각각 캠퍼스를 두고 있는 사립대학교",
76 + "url": "http://terms.naver.com/alikeMeaning.nhn?query=00063699",
77 + "confidence": "0.296413"
78 + },
79 + {
80 + "title": "경희대학교 [Kyung Hee...",
81 + "passage": "경희대학교 [Kyung Hee University, 慶熙大學校] 서울과 경기도 용인시에 각각 캠퍼스를 두고 있는 사립대학교. 1949년 가인가를 받아 설립된 2년제 신흥초급대학에서 출발했다. 당시 신흥초급대학은 배영대학관과... 네이버 기관단체사전 : 학교기관/단체 > 교육 /도서관 개교시기1949년 유형사립 종합대학교훈학원의 민주화, 사상의 민주화, 생활의 민주화교화목련마스코트웃는 ...",
82 + "url": "https://terms.naver.com/entry.nhn?docId=870939&cid=43142&categoryId=43142",
83 + "confidence": "0.427992"
84 + },
85 + {
86 + "title": "경희대학교 [Kyunghee University ...",
87 + "passage": "경희대학교 [Kyunghee University, 慶熙大學校] 서울시 동대문구와 경기도 용인시에 각각 캠퍼스를 두고 있는 사립대학교. 1949년 배영대학관(培英大學館)과 신흥(新興)전문학교를 합병하여 신흥초급대학으로... 두산백과한국 > 대학교 구분사립 특성종합대학 개교일1949년소재지서울 동대문구 경희대로 26(서울캠퍼스), 경기 용인시 기흥구 덕영대로 1732(국...",
88 + "url": "https://terms.naver.com/entry.nhn?docId=1060681&cid=40942&categoryId=34669",
89 + "confidence": "0.642121"
90 + },
91 + {
92 + "title": "경희대학교 [Kyunghee University ...",
93 + "passage": "경희대학교 [Kyunghee University, 慶熙大學校] 서울특별시 동대문구 경희대로에 있는 사립 종합대학교. [연원 및 변천] 1946년에 설립된 배영대학관(培英大學館)과 1947년에 설립된 신흥전문학관(新興專門學館)이... 한국민족문화대백과한국민족문화대백과 > 교육 이칭별칭 경희대 유형단체 시대현대 성격고등교육기관설립일시1949년 5월설립자조영식(趙永植)",
94 + "url": "https://terms.naver.com/entry.nhn?docId=658327&cid=46615&categoryId=46615",
95 + "confidence": "0.456494"
96 + },
97 + {
98 + "title": "庆熙大学 발음듣기 TTS...",
99 + "passage": "庆熙大学 발음듣기 TTS 경희대학교.",
100 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
101 + "confidence": "0.327027"
102 + },
103 + {
104 + "title": "학생부종합전형 전년도 대비...",
105 + "passage": "학생부종합전형, 전년도 대비 교과성적 비중 줄여 - 경희대학교 2019.08.30. [2020 대학 가는 길] 경희대학교 경희대 제공 경희대학교는 2020학년도 수시모집에서 전체 모집인원 5200명 중 71.9%인 3741명을 선발한다. 수시모집 중 학생부종합전... 라이프앤러닝 2020 대학 가는 길 명이 추천했습니다. 0",
106 + "url": "https://m.post.naver.com/viewer/postView.nhn?volumeNo=24257792&memberNo=45415395&vType=VERTICAL",
107 + "confidence": "0.168430"
108 + },
109 + {
110 + "title": "[DUGOUT Universe]경희대학교 박태산...",
111 + "passage": "[DUGOUT Universe]경희대학교 박태산 2019.05.27. Photographer 손승필Editor 이혜정 Location 경희대학교 야구장박태산출생 1998년 7월 23일 신체조건 183cm 87kg출신 학교 신풍초-자양중-경기고-경희대... 더그아웃매거진 공식 #Baseball Player 명이 추천했습니다. 1",
112 + "url": "https://m.post.naver.com/viewer/postView.nhn?volumeNo=20489506&memberNo=7809682&vType=VERTICAL",
113 + "confidence": "0.449053"
114 + },
115 + {
116 + "title": "대학의 모든 것...",
117 + "passage": "대학의 모든 것 : 경희대학교 영어영문학과 2018.09.20. 경희대학교 사진을 보신 적이 있거나 직접 방문해 보신 적이 있다면 다 아실 만한 화창한 봄에 벚꽃이 만개한 경희대학교 본관의 모습입니다. ... 애드캠퍼스 애드캠퍼스 칼럼멘토단 명이 추천했습니다. 6",
118 + "url": "https://m.post.naver.com/viewer/postView.nhn?volumeNo=16741574&memberNo=33633636&vType=VERTICAL",
119 + "confidence": "0.814015"
120 + },
121 + {
122 + "title": "경희대학교의 5월을 빛낸 축제",
123 + "passage": " 2019.06.04. 특히 올해에는 경희대학교에서 어마어마한 연예인 분들의 축제 공연을 볼 수 있었는데요, 볼빨간 사춘기의 노래를 현장에서 듣는 매력은 정말 축제의 열기를 실감하게... 경희대학교 희아띠랑 공식 blog.naver.com/khubl... 블로그 내 검색",
124 + "url": "https://blog.naver.com/khublog?Redirect=Log&logNo=221554128923",
125 + "confidence": "0.595592"
126 + },
127 + {
128 + "title": "경희대학교의 5월을 빛낸...",
129 + "passage": "경희대학교의 5월을 빛낸 축제 2019.06.04. 특히 올해에는 경희대학교에서 어마어마한 연예인 분들의 축제 공연을 볼 수 있었는데요, 볼빨간 사춘기의 노래를 현장에서 듣는 매력은 정말 축제의 열기를 실감하게... 경희대학교 희아띠랑 공식 blog.naver.com/khubl... 블로그 내 검색",
130 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
131 + "confidence": "0.625846"
132 + },
133 + {
134 + "title": "경희대학교 교육대학원 체육선생님 할 수 있다고 ?",
135 + "passage": " 3일 전 께서 경희대학교 교육대학원 진학 하는데 성공을 할 수 있었던 썰을 확인해보도록... 저는 대학교까지만 졸업을 했기 때문에 대학원에 대해서는 아예 모르기 때문에 저도... EDUSSUM 공식블로그 blog.naver.com/ysmhee/221673633245 블로그 내 검색",
136 + "url": "https://blog.naver.com/ysmhee?Redirect=Log&logNo=221673633245",
137 + "confidence": "0.751091"
138 + },
139 + {
140 + "title": "경희대학교 교육대학원 체육선생님...",
141 + "passage": "경희대학교 교육대학원 체육선생님 할 수 있다고 ? 3일 전 께서 경희대학교 교육대학원 진학 하는데 성공을 할 수 있었던 썰을 확인해보도록... 저는 대학교까지만 졸업을 했기 때문에 대학원에 대해서는 아예 모르기 때문에 저도... EDUSSUM 공식블로그 blog.naver.com/ysmhee/221673633245 블로그 내 검색",
142 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
143 + "confidence": "0.276157"
144 + },
145 + {
146 + "title": "고졸 일반편입 학사편입 어떤걸 준비해야 효율적일까? [경희대학교 모집요강]",
147 + "passage": "학사편입 어떤걸 준비해야 효율적일까? [경희대학교 모집요강] 2019.08.25. 간단한 예시만 봐도 명지대학교의 경우 인문계열학과는 일반편입보다... 유명한 경희대학교 모집요강을 보여드리고 글을 마무리하려고 하니 관심있는 분은 조금만... Gaon The Second blog.naver.com/msbaeko/221627020734 블로그 내 검색",
148 + "url": "https://blog.naver.com/msbaeko?Redirect=Log&logNo=221627020734",
149 + "confidence": "0.138135"
150 + },
151 + {
152 + "title": "경희대학교 편입, 공대편입 이렇게 준비했다!!",
153 + "passage": " 2019.07.22. 이 방법은 4년제 대학교를 졸업한 경우에는 불가합니다. 여기까지 해서 후기와 준비방법까지 모두 알아봤는데 경희대학교로 편입, 경희대학교 공대편입을 준비하는데... 교육플랫폼 에듀in blog.naver.com/helen4234/221592388878 블로그 내 검색",
154 + "url": "https://blog.naver.com/helen4234?Redirect=Log&logNo=221592388878",
155 + "confidence": "0.295389"
156 + },
157 + {
158 + "title": "경희대학교 편입 공대편입...",
159 + "passage": "경희대학교 편입, 공대편입 이렇게 준비했다!! 2019.07.22. 이 방법은 4년제 대학교를 졸업한 경우에는 불가합니다. 여기까지 해서 후기와 준비방법까지 모두 알아봤는데 경희대학교로 편입, 경희대학교 공대편입을 준비하는데... 교육플랫폼 에듀in blog.naver.com/helen4234/221592388878 블로그 내 검색",
160 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
161 + "confidence": "0.116720"
162 + },
163 + {
164 + "title": "[약대편입] 경희대학교 약대 '이것' 반영비율 40%! 2020학년도 모집요강 살펴보기",
165 + "passage": "[약대편입] 경희대학교 약대 '이것' 반영비율 40%! 2020학년도... 2019.08.12. 오늘은 경희대학교 약학대학 2020학년도 모집요강을 살펴보았는데요, 경희대는 서류평가의 비중이 매우 높은 학교로 자기소개서 및 서류의 철저한 준비가 필요한... 1등의 책임감, 메가엠디 공... 공식 blog.naver.com/megam... 블로그 내 검색",
166 + "url": "https://blog.naver.com/megamdl?Redirect=Log&logNo=221613932057",
167 + "confidence": "0.376889"
168 + },
169 + {
170 + "title": "파워링크 ‘경희대학교’ 관련...",
171 + "passage": "파워링크 ‘경희대학교’ 관련 광고입니다. 이 광고가 표시된 이유 광고 노출기준은 검색어에 대한 연관성과 광고주의 입찰가이며, 이미지 등 추가 링크는 등록한 경우에만 기준에 따라 노출됩니다. 도움말 안내 레이어 닫기 등록 안내",
172 + "url": "https://search.naver.com/search.naver?query=%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90",
173 + "confidence": "0.297463"
174 + },
175 + {
176 + "title": "경희대학교 감사합니다!",
177 + "passage": " V LIVE 잔나비 JANNABI 재생수34,731 2019.10.03.",
178 + "url": "http://www.vlive.tv/video/153223",
179 + "confidence": "0.356030"
180 + },
181 + {
182 + "title": "경희대학교 감사합니다!",
183 + "passage": " V LIVE 잔나비 JANNABI 재생수14,373 2019.10.03.",
184 + "url": "http://www.vlive.tv/video/153222",
185 + "confidence": "0.472184"
186 + },
187 + {
188 + "title": "2019 경희대학교 서울캠퍼스 축제",
189 + "passage": " V LIVE 잔나비 JANNABI 재생수18,973 2019.10.02.",
190 + "url": "http://www.vlive.tv/video/153213",
191 + "confidence": "0.490006"
192 + },
193 + {
194 + "title": "경희대학교 수강신청 앱",
195 + "passage": " 구글플레이교육경희대학교",
196 + "url": "https://play.google.com/store/apps/details?id=kr.co.swit.khuniv&hl=ko",
197 + "confidence": "0.314240"
198 + },
199 + {
200 + "passage": " 경희대학교 ... 경희 70주년 맞이 평화의 섬 순례'가 8월 24일부터 29일까지 제주도에서 진행됐다. 재학생과 ... 구독을 신청해 주시면 경희 소식을 전해 드립니다.대학 입학/편입학경희대학교 인포21대학국제캠퍼스캠퍼스안내학사",
201 + "url": "https://www.khu.ac.kr/&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAAegQIBxAB&usg=AOvVaw0yynDH_GZSY9ZYiW8KINU8",
202 + "title": "경희대학교",
203 + "confidence": "0.133866"
204 + },
205 + {
206 + "passage": "경희대학교 인포21",
207 + "url": "https://khuis.khu.ac.kr/&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQjBAwAnoECAcQBQ&usg=AOvVaw1H2W6rUBAe8fGdkIkonuv7",
208 + "title": "경희대학교 인포21...",
209 + "confidence": "0.597700"
210 + },
211 + {
212 + "passage": "7일 전 � 25,197명[1]. 대학원생. 7,657명[2]. 교원. 1,452명[3]. 직원. 439명[4]. 대학기본역량진단. 자율개선대학(2018). 홈페이지. 경희대학교 공식 홈페이지�...",
213 + "url": "https://namu.wiki/w/%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAVegQIBhAB&usg=AOvVaw0u6-tMfcBHzM5IV3xYIb6h",
214 + "title": "경희대학교 - 나무위키 › 경희대학교",
215 + "confidence": "0.306908"
216 + },
217 + {
218 + "passage": "경희대학교(慶熙大學校, Kyung Hee University)는 1911년에 개교한 신흥무관학교( 新興武官學校)의 후신으로 대한민국의 4년제 사립 종합대학이다. 신흥무관학교(�... 설립자: 조영식 학부생 수: 26,063명 (2018년) 대학원생 수: 7,424명 (2018년) 교직원 수: 1,442명 (2018년)",
219 + "url": "https://ko.wikipedia.org/wiki/%EA%B2%BD%ED%9D%AC%EB%8C%80%ED%95%99%EA%B5%90&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAWegQIBBAB&usg=AOvVaw39JWD3N9sixgAcGXwqXTMj",
220 + "title": "경희대학교 - 위키백과, 우리 모두의 백과사전 › wiki › 경희대학교",
221 + "confidence": "0.317280"
222 + },
223 + {
224 + "passage": "구분, 총모집인원, 지원인원, 경쟁률. 학생부종합(네오르네상스전형), 1180, 17291, 14.65 : 1. 학생부종합(고교연계전형), 800, 4160, 5.20 : 1. 학생부종합[고른기회�...",
225 + "url": "http://ratio.uwayapply.com/2020/susi2/khu/1/&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAXegQIARAB&usg=AOvVaw1HqdlNRB-HPBzN0vHnFoQj",
226 + "title": "경희대학교 경/쟁/률/서/비/스ratio.uwayapply.com › susi2 › khu",
227 + "confidence": "0.194752"
228 + },
229 + {
230 + "passage": "... of Fine Arts, Kyung Hee University. 서울특별시 동대문구 경희대로 26 경희대 학교 미술대학. Tel. 02-961-0636 | Fax. 02-961-0632. E-Mail. khsc0400@khu.ac. kr.",
231 + "url": "http://khuart.com/&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAYegQIAxAB&usg=AOvVaw12jFmPPL_pQIN6ixV9BzPA",
232 + "title": "경희대학교 미술대학 – KYUNGHEE UNIVERSITY,COLLEGE OF ...khuart.com",
233 + "confidence": "0.482131"
234 + },
235 + {
236 + "passage": "과정, 기간, 반배치 OT, 접수 마감. 봄 정규, 4.2(화) ~ 6.12(수), 4.1(월), 비자협정국: 2.22(금) 비자비협정국: 1.18(금). 여름 정규, 6.20(목) ~ 8.29(목), 6.19(수), 비자�...",
237 + "url": "http://www.iie.ac.kr/?url=/ko_edu/course_formal.php&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAZegQIAhAB&usg=AOvVaw0TZF83zJONFDJlwxeWS32-",
238 + "title": "정규과정-경희대학교 국제교육원www.iie.ac.kr › ko_edu › course_formal",
239 + "confidence": "0.168277"
240 + },
241 + {
242 + "passage": " 년 개원 동대문구 회기동 위치, 보건복지부 의료질평가 최상위등급 획득. 문의 02-958-8114. 경희의료원은 의대병원-치과병원-한방병원-후마니타스암병원으로�...",
243 + "url": "https://www.khuh.or.kr/&sa=U&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQFjAaegQIBRAB&usg=AOvVaw3jwVbaz99HaQcVQYscyzZw",
244 + "title": "경희대학교병원",
245 + "confidence": "0.165275"
246 + },
247 + {
248 + "passage": "관련 검색어>경희대학교 학과>경희대학교 주요 동문>경희대학교 인포21>경희대학교 입학처>경희대학교 로고>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
249 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+종합정보시스템&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAE",
250 + "title": "경희대학교 종합정보시스템",
251 + "confidence": "0.195777"
252 + },
253 + {
254 + "passage": "관련 검색어경희대학교 종합정보시스템>>경희대학교 주요 동문>경희대학교 인포21>경희대학교 입학처>경희대학교 로고>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
255 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+학과&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAI",
256 + "title": "경희대학교 학과",
257 + "confidence": "0.171724"
258 + },
259 + {
260 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>>경희대학교 인포21>경희대학교 입학처>경희대학교 로고>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
261 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+주요+동문&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAM",
262 + "title": "경희대학교 주요 동문",
263 + "confidence": "0.254889"
264 + },
265 + {
266 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>경희대학교 주요 동문>>경희대학교 입학처>경희대학교 로고>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
267 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+인포21&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAQ",
268 + "title": "경희대학교 인포21",
269 + "confidence": "0.219550"
270 + },
271 + {
272 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>경희대학교 주요 동문>경희대학교 인포21>>경희대학교 로고>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
273 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+입학처&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAU",
274 + "title": "경희대학교 입학처",
275 + "confidence": "0.187706"
276 + },
277 + {
278 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>경희대학교 주요 동문>경희대학교 인포21>경희대학교 입학처>>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
279 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+로고&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAY",
280 + "title": "경희대학교 로고",
281 + "confidence": "0.121359"
282 + },
283 + {
284 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>경희대학교 주요 동문>경희대학교 인포21>경희대학교 입학처>경희대학교 로고>>경희대학교 정보>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
285 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+평화의전당&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAc",
286 + "title": "경희대학교 평화의전당",
287 + "confidence": "0.170284"
288 + },
289 + {
290 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>경희대학교 주요 동문>경희대학교 인포21>경희대학교 입학처>경희대학교 로고>경희대학교 평화의전당>>경희대 국제캠퍼스 인식>경희대학교 경영대학>",
291 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+정보&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAg",
292 + "title": "경희대학교 정보",
293 + "confidence": "0.179837"
294 + },
295 + {
296 + "passage": "관련 검색어경희대학교 종합정보시스템>경희대학교 학과>경희대학교 주요 동문>경희대학교 인포21>경희대학교 입학처>경희대학교 로고>경희대학교 평화의전당>경희대학교 정보>경희대 국제캠퍼스 인식>>",
297 + "url": "https://google.com/search?ie=UTF-8&q=경희대학교+경영대학&sa=X&ved=2ahUKEwiD1-K8wJjlAhXrQxUIHZVVB6UQ1QJ6BAgAEAo",
298 + "title": "경희대학교 경영대학",
299 + "confidence": "0.212136"
300 + }
301 + ]
302 + }
303 +}
...\ No newline at end of file ...\ No newline at end of file
1 import React from 'react'; 1 import React from 'react';
2 import AppTabContainer from '../AppTabContainer/AppTabContainer'; 2 import AppTabContainer from '../AppTabContainer/AppTabContainer';
3 -import Loading from '../Loading/Loading';
4 import { connect } from 'react-redux'; 3 import { connect } from 'react-redux';
4 +import Loading from '../Loading/Loading';
5 5
6 const Main = ({ isLoading}) => { 6 const Main = ({ isLoading}) => {
7 if ( isLoading ) { 7 if ( isLoading ) {
...@@ -19,11 +19,10 @@ const Main = ({ isLoading}) => { ...@@ -19,11 +19,10 @@ const Main = ({ isLoading}) => {
19 } 19 }
20 } 20 }
21 21
22 -
23 const MainContainer = ({isLoading}) => { 22 const MainContainer = ({isLoading}) => {
24 return(<Main isLoading={isLoading} />) 23 return(<Main isLoading={isLoading} />)
25 } 24 }
26 25
27 -const mapStateToProps = (state) => ({isLoading : state.loading.isLoading})
28 -
29 -export default connect(mapStateToProps)(MainContainer);
...\ No newline at end of file ...\ No newline at end of file
26 +export default connect(
27 + ({search})=>({isLoading:search.isLoading})
28 +)(MainContainer);
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -2,9 +2,10 @@ import React from 'react'; ...@@ -2,9 +2,10 @@ import React from 'react';
2 import {View,Alert} from 'react-native'; 2 import {View,Alert} from 'react-native';
3 import { Searchbar } from 'react-native-paper'; 3 import { Searchbar } from 'react-native-paper';
4 import { connect } from 'react-redux'; 4 import { connect } from 'react-redux';
5 -import {toggle} from '../../reducers/loading'; 5 +import {change, submit} from '../../reducers/search';
6 6
7 -const voiceRecognition=()=>{ 7 +
8 +const voiceRecognition = () => {
8 Alert.alert( 9 Alert.alert(
9 '음성 인식', 10 '음성 인식',
10 '아직 구현 못함', 11 '아직 구현 못함',
...@@ -12,58 +13,35 @@ const voiceRecognition=()=>{ ...@@ -12,58 +13,35 @@ const voiceRecognition=()=>{
12 {text: '확인', onPress: () => {}}, 13 {text: '확인', onPress: () => {}},
13 ], 14 ],
14 ) 15 )
15 -} 16 +};
16 17
17 -class SearchBar extends React.Component { 18 +const SearchBar = ({ query, change, submit }) => {
18 - constructor(props){ 19 + return(
19 - super(props); 20 + <>
20 - this.state = { 21 + <View>
21 - query: '', 22 + <Searchbar
22 - }; 23 + placeholder="검색할 질문을 입력하세요."
23 - } 24 + onChangeText={change}
24 - 25 + value={query}
25 - queryChange=(query)=>{ 26 + icon='microphone'
26 - this.setState({ query: query }); 27 + onIconPress={voiceRecognition}
27 - } 28 + onSubmitEditing={submit}
29 + />
30 + </View>
31 + </>
32 + )
33 +};
28 34
29 - submit=()=>{
30 - this.props.toggleLoading();
31 - setTimeout(()=>{this.props.toggleLoading()},1000);
32 - this.setState({query:''});
33 - }
34 35
35 - voiceRecognition=()=>{ 36 +const SearchBarContainer = ({ query, change, submit }) => {
36 - Alert.alert( 37 + return(<SearchBar query={query} change={change} submit={submit} />)
37 - '음성 인식', 38 +};
38 - '아직 구현 못함',
39 - [
40 - {text: '확인', onPress: () => {}},
41 - ],
42 - )
43 - }
44 39
45 - render(){ 40 +export default connect(
46 - return( 41 + ({search})=> ({
47 - <> 42 + query: search.query
48 - <View> 43 + }),
49 - <Searchbar 44 + {
50 - placeholder="검색할 질문을 입력하세요." 45 + change,submit
51 - onChangeText={this.queryChange}
52 - value={this.state.query}
53 - icon='microphone'
54 - onIconPress={voiceRecognition}
55 - onSubmitEditing={this.submit}
56 - />
57 - </View>
58 - </>
59 - )
60 } 46 }
61 -}
62 -
63 -const SearchBarContainer = ({toggle}) => {
64 - return(<SearchBar toggleLoading={toggle} />)
65 -}
66 -
67 -const mapDispatchToProps = (dispatch) => ({toggle : ()=>{ dispatch( toggle() )}});
68 -
69 -export default connect(null,mapDispatchToProps)(SearchBarContainer);
...\ No newline at end of file ...\ No newline at end of file
47 +)(SearchBarContainer);
...\ No newline at end of file ...\ No newline at end of file
......
1 const axios = require('axios') 1 const axios = require('axios')
2 const filter = require('./filter') 2 const filter = require('./filter')
3 3
4 -export const SendToApi = async(searchdata) => { 4 +export const sendSearch = async(searchText) => {
5 - console.log(searchdata) 5 + console.log(searchText)
6 return new Promise((resolve,reject) => { 6 return new Promise((resolve,reject) => {
7 let isBlank_reg = "/\s\g" 7 let isBlank_reg = "/\s\g"
8 - if(searchdata=== "" || searchdata.length > 30 ){ 8 + if(searchText=== "" || searchText.length > 30 ){
9 resolve(JSON.stringify({ "return_code" : -1, "error_code": "검색 단어를 확인해 주세요!" })); 9 resolve(JSON.stringify({ "return_code" : -1, "error_code": "검색 단어를 확인해 주세요!" }));
10 } else{ 10 } else{
11 axios( 11 axios(
...@@ -17,7 +17,7 @@ export const SendToApi = async(searchdata) => { ...@@ -17,7 +17,7 @@ export const SendToApi = async(searchdata) => {
17 url: 'http://1.201.142.118:80/api/cliConnection', 17 url: 'http://1.201.142.118:80/api/cliConnection',
18 data: { 18 data: {
19 data:{ 19 data:{
20 - text: searchdata.replace(/\s{1,}/g,' ') 20 + text: searchText.replace(/\s{1,}/g,' ')
21 } 21 }
22 }, 22 },
23 method: "POST", 23 method: "POST",
......
1 +import test from '../assets/test.json'
2 +
3 +export const readTest = () => {
4 + let testResult = test;
5 + return testResult;
6 +}
...\ No newline at end of file ...\ No newline at end of file
...@@ -1603,6 +1603,22 @@ ...@@ -1603,6 +1603,22 @@
1603 "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", 1603 "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
1604 "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" 1604 "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg=="
1605 }, 1605 },
1606 + "axios": {
1607 + "version": "0.19.0",
1608 + "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.0.tgz",
1609 + "integrity": "sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==",
1610 + "requires": {
1611 + "follow-redirects": "1.5.10",
1612 + "is-buffer": "^2.0.2"
1613 + },
1614 + "dependencies": {
1615 + "is-buffer": {
1616 + "version": "2.0.4",
1617 + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz",
1618 + "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A=="
1619 + }
1620 + }
1621 + },
1606 "babel-plugin-dotenv": { 1622 "babel-plugin-dotenv": {
1607 "version": "0.1.1", 1623 "version": "0.1.1",
1608 "resolved": "https://registry.npmjs.org/babel-plugin-dotenv/-/babel-plugin-dotenv-0.1.1.tgz", 1624 "resolved": "https://registry.npmjs.org/babel-plugin-dotenv/-/babel-plugin-dotenv-0.1.1.tgz",
...@@ -2834,6 +2850,29 @@ ...@@ -2834,6 +2850,29 @@
2834 "locate-path": "^2.0.0" 2850 "locate-path": "^2.0.0"
2835 } 2851 }
2836 }, 2852 },
2853 + "follow-redirects": {
2854 + "version": "1.5.10",
2855 + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz",
2856 + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
2857 + "requires": {
2858 + "debug": "=3.1.0"
2859 + },
2860 + "dependencies": {
2861 + "debug": {
2862 + "version": "3.1.0",
2863 + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
2864 + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
2865 + "requires": {
2866 + "ms": "2.0.0"
2867 + }
2868 + },
2869 + "ms": {
2870 + "version": "2.0.0",
2871 + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
2872 + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
2873 + }
2874 + }
2875 + },
2837 "fontfaceobserver": { 2876 "fontfaceobserver": {
2838 "version": "2.1.0", 2877 "version": "2.1.0",
2839 "resolved": "https://registry.npmjs.org/fontfaceobserver/-/fontfaceobserver-2.1.0.tgz", 2878 "resolved": "https://registry.npmjs.org/fontfaceobserver/-/fontfaceobserver-2.1.0.tgz",
...@@ -5778,6 +5817,11 @@ ...@@ -5778,6 +5817,11 @@
5778 "symbol-observable": "^1.2.0" 5817 "symbol-observable": "^1.2.0"
5779 } 5818 }
5780 }, 5819 },
5820 + "redux-thunk": {
5821 + "version": "2.3.0",
5822 + "resolved": "https://registry.npmjs.org/redux-thunk/-/redux-thunk-2.3.0.tgz",
5823 + "integrity": "sha512-km6dclyFnmcvxhAcrQV2AkZmPQjzPDjgVlQtR0EQjxZPyJ0BnMf3in1ryuR8A2qU0HldVRfxYXbFSKlI3N7Slw=="
5824 + },
5781 "regenerate": { 5825 "regenerate": {
5782 "version": "1.4.0", 5826 "version": "1.4.0",
5783 "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 5827 "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz",
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
9 }, 9 },
10 "dependencies": { 10 "dependencies": {
11 "1.3.0": "^1.3.0", 11 "1.3.0": "^1.3.0",
12 + "axios": "^0.19.0",
12 "expo": "^35.0.0", 13 "expo": "^35.0.0",
13 "expo-permissions": "~7.0.0", 14 "expo-permissions": "~7.0.0",
14 "expo-speech": "~7.0.0", 15 "expo-speech": "~7.0.0",
...@@ -27,7 +28,8 @@ ...@@ -27,7 +28,8 @@
27 "react-navigation-tabs": "^2.5.6", 28 "react-navigation-tabs": "^2.5.6",
28 "react-redux": "^7.1.3", 29 "react-redux": "^7.1.3",
29 "react-thunk": "^1.0.0", 30 "react-thunk": "^1.0.0",
30 - "redux": "^4.0.4" 31 + "redux": "^4.0.4",
32 + "redux-thunk": "^2.3.0"
31 }, 33 },
32 "devDependencies": { 34 "devDependencies": {
33 "babel-preset-expo": "^7.1.0", 35 "babel-preset-expo": "^7.1.0",
......
1 -import { createStore, combineReducers } from 'redux'; 1 +import { createStore, combineReducers, applyMiddleware } from 'redux';
2 -import loading from './loading' 2 +import ReduxThunk from 'redux-thunk'
3 +import search from './search';
3 4
4 -const store = combineReducers({ loading }); 5 +const store = combineReducers({ search });
5 6
6 -export default createStore(store)
...\ No newline at end of file ...\ No newline at end of file
7 +export default createStore(store, applyMiddleware(ReduxThunk) );
...\ No newline at end of file ...\ No newline at end of file
......
1 +
2 +
1 const TOGGLE = 'loading/TOGGLE'; 3 const TOGGLE = 'loading/TOGGLE';
2 4
3 -export const toggle = () => ({ type: TOGGLE,}) 5 +export const toggle = () => ({ type: TOGGLE})
4 6
5 const initialState = { 7 const initialState = {
6 isLoading: false, 8 isLoading: false,
......
1 +import {sendSearch} from '../lib/api'
2 +import {readTest} from '../lib/readTest';
3 +
1 const CHANGE = 'search/CHANGE'; 4 const CHANGE = 'search/CHANGE';
2 -const SUBMIT = 'search/SUBMIT'; 5 +const SUCCESS = 'search/SUCCESS';
6 +const FAILURE = 'search/FAILURE';
7 +const START = 'search/START';
3 8
4 export const change = (text) => ({ 9 export const change = (text) => ({
5 type: CHANGE, 10 type: CHANGE,
6 text, 11 text,
7 }) 12 })
8 13
9 -export const submit = (text) => (dispatch) => ({ 14 +export const submit = (text) => async (dispatch) => {
10 - type: CHANGE, 15 + dispatch( {type:START});
11 - text, 16 + try{
12 -}) 17 + /*const response = await sendSearch(text);*/
18 + const response = await readTest(); // 테스트용입니당~
19 + setTimeout(()=>dispatch( { type:SUCCESS, result:response }),1000); // 셋타임아웃도 테스트용
20 + }
21 + catch(err){
22 + dispatch({ type:FAILURE, result:response })
23 + }
24 +}
25 +
13 26
14 const initialState = { 27 const initialState = {
15 query: '', 28 query: '',
16 searchResult:{}, 29 searchResult:{},
30 + isLoading: false,
17 }; 31 };
18 32
19 export default ToggleLoading = (state = initialState, action) => { 33 export default ToggleLoading = (state = initialState, action) => {
20 switch (action.type) { 34 switch (action.type) {
21 case CHANGE: 35 case CHANGE:
22 return {...state, query: action.text}; 36 return {...state, query: action.text};
23 - case SUBMIT: 37 + case SUCCESS:
24 - return {...state, query: ''} 38 + return {...state, isLoading:false,searchResult: action.response};
39 + case FAILURE:
40 + return {...state, isLoading:false};
41 + case START:
42 + return {...state, query:'',isLoading:true}
25 default: 43 default:
26 return state; 44 return state;
27 } 45 }
28 } 46 }
29 47
30 -submit=()=>{
31 - this.props.toggleLoading();
32 - setTimeout(()=>{this.props.toggleLoading()},1000);
33 - this.setState({query:''});
34 -}
35 48
......