묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Slack 클론 코딩[실시간 채팅 with React]
logout시 발생하는 순서
logout 버튼을 누르면 /api/users/logout으로 post요청이 보내진후 성공 -> revalidate함수실행 -> useSWR의 fetcher함수 실행 fetcher함수가 api/users로 axios를 실행하면 왜 false 값이 return이 되나요? api/users/logout 으로 post를 보내면 서버측에서 알아서 로그인 할 때 전달받은 정보를 false로 바꾸어주는 건가요? 답변 부탁드립니다.
-
미해결하울의 안드로이드 인스타그램 클론 만들기
사진업로드 안됨
사진을 업로드 하려고 아래 bottomnavigationview의 카메라 버튼을 누른 화면입니다. 누르면 activity_add_photo.xml 화면이 나와야 정상인거같은데 저게 끝입니다ㅜㅜ 뭐가 문제일까요 / bottomnavigationview의 다른 버튼을 누르면 색도 변하고 작동 되는 것 같은데 이미지 업로드 하는 버튼만 안됩니다. / 코드도 영상이랑 동일하게 하고 manifest 파일에 AddphotoActivity도 추가했습니다.
-
미해결PyGame 어드벤쳐 : 위니브 월드를 수복하라!
코드_질문드립니다.
002_요리하기 코드를 실행하면 1. 다음 오류가 뜨며 창이 강제종료 되는데, 어떤 것이 문제인지 잘 모르겠습니다. [] => {} 라고 바꿔도 그대로 오류가 생깁니다. 자바독이미지딕셔너리[요리] = [] TypeError: 'pygame.Surface' object does not support item assignment 2. 코드에서 어떤 부분은 예시로 '전' 으로 작은따옴표가 쓰일 때가 있고 "전"이라고 큰따옴표가 쓰일 때도 있는데 어떤 차이인지 질문드립니다.
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
3:44 초 질문 있습니다
서버에서 토큰 발급해서 프론트로 전달 하는걸 쿠키, local storage에 저장 한다고 하셨는데, 1. 쿠키에 저장하면 보안에 취약 하지 않나요? 2. 쿠키, local storage에 저장하는 건 프론트에서 하는건가요? 3. redis를 사용 하지 않고 해도 되나요? 4. 새로고침 해도 토큰값은 유지 되나요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Test class 위치
안녕하세요. 강의 너무 잘 듣고 있습니다. 상세히 설명해주셔서 감사합니다. 한 가지만 여쭤보겠습니다. 테스트 클래스를 test 디렉토리에 만들 때, 만드시 원래 소스코드와 패키지 이름과 위계 등을 맞춰서 대응되게 만들어줘야 하는 건가요?
-
미해결취미로 해킹#2(해커의 컴퓨팅)
631포트가 열려있으면
안녕하세요.알려준 쇼단(?) 이라는 사이트에 제 개인 아이피를 넣어봤는데요.631 포트가 열려있다고 나오는데 무엇을 의미하는지 궁금합니다.
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
인증 관련하여 질문드립니다.
좋은 강의 올려주셔서 감사합니다. 정말 도움이 많이 되고 있습니다. ㅜㅜ 인증 부분에서 궁금한 점이 있는데요, 이전에 User Service의 WebSecurity.java에서 아래 코드를 통해 전체 경로에 대해 AuthenticationFilter를 거치도록 한 것 같은데, 바로 호출이 되어서요. //인증이 된 상태에서만 통과시키도록. http.authorizeRequests() .antMatchers("/**") .hasIpAddress("{source.ip}") //source ip .and() .addFilter(getAuthenticationFilter()); gateway를 통해서 호출하는 경우에는 health_check 에도 토큰이 필요한 것 같았는데, 서비스 직접 호출 시에는 토큰이 필요하지 않은 이유가 무엇인지 궁금합니다. 추가로, actuator/** 에 대해 permitAll은 왜 따로 해주신건지도 궁금합니다. permitAll 하지 않아도 호출 하는데는 문제 없는 것 같더라구요. 감사합니다.
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
HTTP 응답 메시지
안녕하세요. 강의 잘 듣고 있습니다. 응답메시지를 보면 content-type과 데이터를 보낸다고 하는데 이게 쫌 헷갈려서요. 개발자도구에서 네트워크 탭을 보면 확인 가능한 많은 파일들 때문에저는 response시에 content-type과 html 파일, js 파일등등을 보낼줄 알았는데 데이터라고 하셔서 저 파일등은 그럼 어떻게 나타내지는건지 궁금합니다. 아니면 제가 생각하고 있는 데이터와 강사님이 말씀하신 데이터의 정의가 다른건가 싶기도 하구요. 감사합니다.
-
미해결윤재성의 만들면서 배우는 Spring MVC 5
mybatis 오류
예외 javax.servlet.ServletException: 서블릿 [appServlet]을(를) 위한 Servlet.init() 호출이 예외를 발생시켰습니다. org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707) org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.base/java.lang.Thread.run(Thread.java:834) 근본 원인 (root cause) org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSession' defined in ServletContext resource [/WEB-INF/config/servlet-context.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are: PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'dataSource' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/TransactionAwareDataSourceProxy org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1726) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1434) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:601) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:925) org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:702) org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:668) org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:716) org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:591) org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:530) org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:170) javax.servlet.GenericServlet.init(GenericServlet.java:158) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707) org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.base/java.lang.Thread.run(Thread.java:834) 근본 원인 (root cause) org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are: PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'dataSource' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/TransactionAwareDataSourceProxy org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:135) org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:79) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1722) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1434) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:601) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524) org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335) org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333) org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208) org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:925) org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918) org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583) org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:702) org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:668) org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:716) org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:591) org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:530) org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:170) javax.servlet.GenericServlet.init(GenericServlet.java:158) org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:542) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:374) org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1707) org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) java.base/java.lang.Thread.run(Thread.java:834)이렇게 오류가 뜨는데 도저히 뭐가 잘못된건지 모르겠습니다..
-
미해결Vue로 Nodebird SNS 만들기
게시물 업로드가 되지 않아 질문드려요!ㅜ
4-17강의 거의다 듣다 게시물 포스트가 되지 않아 질문드려요 네트워크 창에서는 에러 500이라 뜨고, 터미널에서는 유저 이메일, 패스워드, 닉네임이 널이 되면 안된다 하는데 ValidationError [SequelizeValidationError]: notNull Violation: User.email cannot be null, notNull Violation: User.nickname cannot be null, notNull Violation: User.password cannot be null at InstanceValidator._validate (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\instance-validator.js:78:13) at processTicksAndRejections (internal/process/task_queues.js:93:5) at async InstanceValidator._validateAndRunHooks (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\instance-validator.js:111:7) at async InstanceValidator.validate (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\instance-validator.js:93:12) at async model.save (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\model.js:3890:7) at async Function.create (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\model.js:2207:12) at async C:\Users\com\vue강좌\복습\back\routes\post.js:32:21 { errors: [ ValidationErrorItem { message: 'User.email cannot be null', type: 'notNull Violation', path: 'email', value: null, origin: 'CORE', instance: [User], validatorKey: 'is_null', validatorName: null, validatorArgs: [] }, ValidationErrorItem { message: 'User.nickname cannot be null', type: 'notNull Violation', path: 'nickname', value: null, origin: 'CORE', instance: [User], validatorKey: 'is_null', validatorName: null, validatorArgs: [] }, ValidationErrorItem { message: 'User.password cannot be null', type: 'notNull Violation', path: 'password', value: null, origin: 'CORE', instance: [User], validatorKey: 'is_null', validatorName: null, validatorArgs: [] } ] } SequelizeValidationError: notNull Violation: User.email cannot be null, notNull Violation: User.nickname cannot be null, notNull Violation: User.password cannot be null at InstanceValidator._validate (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\instance-validator.js:78:13) at processTicksAndRejections (internal/process/task_queues.js:93:5) at async InstanceValidator._validateAndRunHooks (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\instance-validator.js:111:7) at async InstanceValidator.validate (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\instance-validator.js:93:12) at async model.save (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\model.js:3890:7) at async Function.create (C:\Users\com\vue강좌\복습\back\node_modules\sequelize\lib\model.js:2207:12) at async C:\Users\com\vue강좌\복습\back\routes\post.js:32:21 POST /post 500 21.201 ms - 1150 구글링도 해보고 찾아 봤는데 방법이 안나와 질문 드립니다. 유저 이메일 등이 잘못 설정이 된거면 도대체 어디에서 잘못된건지 만진적이 없는거 같은데 ㅜ 도와주시면 감사하겠습니다 참고로 코딩페이지 보내드리겠습니다 routes/post.js(백엔드) const express = require('express') const multer = require('multer') const path = require('path') const db = require('../models') const { isLogedIn, isNotLogedIn } = require('./middlewares') const router = express.Router() const upload = multer({ storage: multer.diskStorage({ destination(req, file, done) { done(null, 'uploads'); }, filename(req, file, done) { const ext = path.extname(file.originalname) const basename = path.basename(file.originalname, ext) done(null, basename + Date.now() + ext) } }), limit: { fileSize: 20 * 1024 * 1024} }) router.post('/images', isLogedIn, upload.array('image'), (req, res) => { console.log(req.files); res.json(req.files.map(v => v.filename)); }) router.post('/', isLogedIn, async (req, res, next) => { try { const hashtags = req.body.content.match(/#[^\s#]+/g); const newPost = await db.Post.create({ content: req.body.content, UserId: req.user.id, }); if (hashtags) { const result = await Promise.all(hashtags.map(tag => db.Hashtag.findOrCreate({ where: { name: tag.slice(1).toLowerCase() }, }))); await newPost.addHashtags(result.map(r => r[0])); } const fullPost = await db.Post.findOne({ where: { id: newPost.id }, include: [{ model: db.User, attributes: ['id', 'nickname'], }], }); return res.json(fullPost); } catch (err) { console.error(err); next(err); } }); module.exports = router PostForm.vue(프론트엔드) <template> <v-card style="margin-bottom: 20px"> <v-container> <v-form ref="form" v-model="valid" @submit.prevent="onSubmitForm"> <v-textarea outlined auto-grow clearable v-model="content" label="어떤 신기한 일이 있었나요?" :hide-details="hideDetails" :success-messages="successMessages" :success="success" :rules="[v => !!v || '내용을 입력해라']" @input="onChangeTextarea" /> <v-btn type="submit" color="green" absolute right>짹짹</v-btn> <input ref="imageInput" type="file" multiple hidden @change ="onChangeImages"> <v-btn @click="onClickImageUpload" type="button">이미지 업로드</v-btn> <div> <div v-for="(p, i) in imagePaths" :key="p" style="display: inline-block"> <img :src="`http://localhost:3085/${p}`" :alt="p" style="width: 200px"> <div> <button @click="onRemoveImage(i)" type="button">제거</button> </div> </div> </div> </v-form> </v-container> </v-card> </template> <script> import { mapState } from 'vuex' export default { data() { return { valid: false, hideDetails: false, successMessages: '', success: false, content: '', } }, computed: { ...mapState('users', ['me']), ...mapState('posts', ['imagePaths']) }, methods: { onChangeTextarea(value) { if(value.length) { this.hideDetails = true; this.success = false; this.successMessages = ''; } }, onSubmitForm() { if(this.$refs.form.validate()) { this.$store.dispatch('posts/add', { content : this.content, }) .then(() => { this.content = '', this.hideDetails = false; this.success = true; this.successMessages = '게시글 등록 성공'; }) .catch(() => { }) } }, onClickImageUpload() { this.$refs.imageInput.click(); }, onChangeImages(e) { console.log(e.target.files) const imageFormData = new FormData(); [].forEach.call(e.target.files, (f) => { imageFormData.append('image', f) }) this.$store.dispatch('posts/uploadImages', imageFormData) }, onRemoveImage(index) { this.$store.commit('posts/removeImagePaths', index) } } } </script> <style> </style> posts.js(프론트엔드) export const state = () => ({ mainPosts: [], hasMorePost: true, imagePaths: [] }) const limit = 10; const totalPosts = 51 export const mutations = { addMainPosts(state, payload) { state.mainPosts.unshift(payload); state.imagePaths = []; }, removeMainPosts(state, payload) { const index = state.mainPosts.findIndex(v => v.id === payload.id); state.mainPosts.splice(index, 1) }, addComment(state, payload) { const index = state.mainPosts.findIndex(v => v.id === payload.postId); state.mainPosts[index].Comments.unshift(payload) }, loadPosts(state, payload) { const diff = totalPosts - state.mainPosts.length const fakePosts = Array(diff > limit ? limit : diff).fill().map(v => ({ id: Math.random().toString(), User: { id: 1, nickname: "Moon" }, content: `hello infinite scrolling ${Math.random()}`, Comments: [], Img: [], })) state.mainPosts = state.mainPosts.concat(fakePosts) state.hasMorePost = fakePosts.length === limit }, concatImagePaths(state, payload) { state.imagePaths = state.imagePaths.concat(payload) }, removeImagePaths(state, payload) { state.imagePaths.splice(payload, 1) } } export const actions = { add({commit, state}, payload) { this.$axios.post('http://localhost:3085/post', { content: payload.content, imagePaths: state.imagePaths, }, { withCredentials: true }) .then((res) => { commit('addMainPosts', res.data) }) .catch(() => { }) }, remove({commit}, payload) { commit('removeMainPosts', payload) }, addComment({commit}, payload) { commit('addComment', payload) }, loadPosts({commit, state}, payload) { if(state.hasMorePost) { commit('loadPosts', payload) } }, uploadImages({ commit }, payload) { this.$axios.post('http://localhost:3085/post/images', payload, { withCredentials: true, }) .then((res) => { commit('concatImagePaths', res.data); }) .catch(() => { }) } }
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
react, vue 웹 프론트엔드 기술
안녕하세요. 이번 강의 영한님 설명 중에 궁금한 점이 있습니다. react, vue로 개발하는 웹 프론트엔드 개발자가 따로 있으면 백엔드 개발자는 그냥 API만 만들어서 넘기면 된다고 하셨는데, 앱 같은 경우는 스토어에서 애플리케이션을 미리 다운받아서 서버로부터 데이터를 받아서 해당 앱에서 데이터를 보여주면 되지만, 프론트 엔드 같은 경우는 이 과정이 어떻게 이루어지나요? 제가 어떤 웹 페이지에 접속했을 때, 앱처럼 해당 웹 페이지의 기본 틀을 제 로컬에 저장해놓는 게 아닌 이상 잘 이해가 안 됩니다. 이와 관련해서 구글링을 좀 해봤는데 검색 키워드가 잘못되었는지 원하는 정보를 얻을 수가 없네요 ㅜㅜ
-
미해결[NarP Series] MVC 프레임워크는 내 손에 [나프1탄]
개발환경
강의 시작할 때 표준 프레임워크 사용안하고, 기존 환경에서 해도 100% 일치하는건 기대 안하는데 큰 상관이 없는지 궁금합니다~ intellij or 높은버전의 jdk, tomcat, rdb 사용 예정입니다
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
결혼식- 정렬질문
시작시간과 끝나는 시간을 [시간,'s'] [시간,'e']으로나누고 시간 및 e ,s 순으로 정렬하는 과정에있어서 질문드립니다. 아래와 같이 12,15 와 ,15,20이 떨어져있는상태에서도 정상적으로 정렬이되긴하는데 sort에 의해 정렬되는 원리가 이해가 안됩니다. sort가 인접인자를 비교하여 정렬하는 방식으로 이해하고있는데 해설처럼 if문을 안에 작성했을시엔 아래와같이 12,15 와 15,20이 떨어져있는상태에서는 15가 인접해있지않아 if문에 걸리는지 궁금합니다. 그래서우선 앞의 숫자를 기준으로 정렬을해준후, 이후에 sort문을 한번더 작성하여 그떄 인접한 시간을비교하여 s와e의 구분을하는 정렬을 실행해줘야하지않나 생각됩니다.. let arr = [ [14, 18], [12, 15], [15, 20], [20, 30], [5, 14], ];
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
@RequestBody와 ObjectMapper와의 차이를 질문하고 싶습니다.
안녕하세요 강의를 듣고 개발을 시작한 개발자입니다 개발 중에 맞딱뜨린 상황이 궁금하여 질문을 남기고자 합니다. 1. @RequestBody 를 통하여 컨트롤 메소드 파라미터로 전달받음 >> @RequestBody ClassName object 2. HttpServletRequest의 getInputStream 을 통하여 ByteArray을 받아서 ObjectMapper 로 클래스 객체 변환 >> ClassName object = objectMapper.readValue(request.getInputStream(), ClassName.class); 해당 두가지 방법으로 구현하였을 때 첫번째 방법은 정상적으로 객체 생성이 제대로 이루어지는데 두번째 방법은 기본 생성자가 반드시 있어야만 객체 생성이 가능했습니다. 그래서 기본 생성자가 필요하다보니 해당 클래스의 멤버변수에 final을 제거해야만 했었네요 전자는 일반 컨트롤 메서드에서 사용이 가능하지만 후자는 컨트롤뿐만 아니라 필터에서도 활용이 가능하여 사용하였는데 필터에서 제대로 역직렬화가 되지 않아 차이가 무엇인지 질문을 드립니다.
-
해결됨이미지 관리 풀스택(feat. Node.js, React, MongoDB, AWS)
AWS Presigned url 장점
기존의 user -> server -> s3 flow로 이미지 업로드를 진행 할 경우 Presigned url를 사용해 구현할 경우와 대비해서 '네트워크 대역폭'이 증가하여 속도적인 측면에서 단점을 가진다고 설명해주셨습니다. 즉 Presigned url을 사용하면 서버에서는 Presign url만 클라이언트에게 던져주고, 실제 파일 업로드는 클라이언트에서 진행되기 때문에 '트래픽 및 대역폭'을 신경쓰지 않아도 된다인거 같은데 여기서 '대역폭의 상관관계(Presigned url 사용 유무에 따른)'가 잘 와닿지 않아서 보충 설명 부탁드려도 될까요? 감사합니다!
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
맥북 유니티 비쥬얼 코드 질문
맥북으로 유니티 쓰는 학생입니다. 비쥬얼 스튜디오 사용법도 많이 달라서 구글링 하면서 어떻게 어떻게 디버깅하고 하는데 디버깅 할 수 있는 파일을 찾을 수 없다고 계속 뜨네요 ㅠㅠ 그리고 원래 유니티에서 만든 Script파일은 비쥬얼 스튜디오에서 실행을 못하나요? 실행이 전혀되지않고 유니티엔진에서 플레이버튼을 누르면 DontDestroyOnLoad(go); s_instance = go.GetComponent<Managers>(); Instance가 생겼다가 실행중지시키면 사라지던데 원래 그런건가요..? ㅜ
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
개인 프로젝트와 관련해 질문 드립니다!
로초 선생님! 웹 게임 강의랑 노드, 노드버드 강의를 다 듣고 나서 간단하게 반응속도를 체크해서 순위를 매겨주는 반응속도 체크 웹사이트를 제작하고 있었습니다. 그런데 모바일에서 푸터와 관련한 문제가 발생했는데 아무리 구글링을 해도 명확하게 해결되지 않아 강의와 직접적인 관련은 없지만 실례를 무릅쓰고 이렇게 질문 드립니다..! 웹에서는 푸터를 비롯해 모든게 정상적으로 출력됩니다. 그런데 모바일에서 작동을 하면 이런 식으로 푸터와 컨텐츠가 겹치는 문제가 발생합니다. 문제점은 2가지로 보입니다. 1. 컨텐츠가 푸터를 밀어내지 못한다. 2. 모바일 홈버튼과 인터넷 버튼까지 height로 취급해서 푸터가 위로 올라간다. 그런데 이게 html/css이면 조금만 손대면 해결 가능할 듯한데 아무래도 React와 styled-components를 이용하다보니 정말 헷갈리네요 ㅠㅠ http://3.36.55.148/ 사이트 주소는 위와 같고, footer는 아래와 같습니다. export const Footer = styled.div` width: 100%; height: 50px; background: black; position: absolute; bottom: 0; `; Applayout을 손보면 될 것 같은데 쉽사리 해결이 안되네요. AppLayout은 아래와 같습니다. import React from 'react'; import PropTypes from 'prop-types'; import { faHandPointUp } from "@fortawesome/free-solid-svg-icons"; import { faGithub, faInstagram, faFacebook } from '@fortawesome/free-brands-svg-icons'; import Link from 'next/link'; import { Header, Wrapper, Center, Style, A, Footer, Github, Instagram, Facebook, Ul, Li } from './styles'; const AppLayout = ({ children }) => ( <div> <div> <Header> <Wrapper icon={faHandPointUp} /> <Center> <Link href="/"><A>반응속도 테스트</A></Link> <Style> By Taewoong </Style> </Center> </Header> <div> <div style={{ position: 'relative' }}>{children}</div> <Footer> <Ul> <Li> <a href="https://github.com/Taewoong1378" target="_blank" rel="noreferrer noopener"> <Github icon={faGithub} /> </a> </Li> <Li> <a href="https://www.instagram.com/tae_coding/" target="_blank" rel="noreferrer noopener"> <Instagram icon={faInstagram} /> </a> </Li> <Li> <a href="https://www.facebook.com/profile.php?id=100008233455158" target="_blank" rel="noreferrer noopener"> <Facebook icon={faFacebook} /> </a> </Li> </Ul> </Footer> </div> </div> </div> ); AppLayout.propTypes = { children: PropTypes.node.isRequired, }; export default AppLayout; https://github.com/Taewoong1378/ResponseCheck_Site_ErrorFix 명확한 해결방법이 아니더라도 추상적으로라도 알려주시면 직접 해결보도록 하겠습니다 :) 올해 처음 코딩에 입문한 뒤, 약 2~3달 전부터 제로초 선생님 강의를 듣기 시작했는데 앞선 5~6개월보다 제로초 선생님 강의를 들은 2~3달이 실력 성장에 훨씬 더 많은 도움이 된 것 같습니다. 코딩하는게 점점 재밌어지는 것 같습니다ㅎㅎ IT 산업기능요원을 준비하고 있고, 조만간 몇몇 회사들에 지원할 듯한데 좋은 결과 있으면 자랑하러 오겠습니다! 항상 좋은 강의 제공해주셔서 감사합니다 ㅎㅎ
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
heroku open app이 안됩니다.
open app 눌렀을 때 Application error 가 떠서 heroku logs --tail 했더니 아래와 같이 나옵니다.. 처음 설치 할 때 윈도우 64 버전으로 다운받았다가 제대로 설치가 안되서 터미널에 npm install -g heroku 로 설치했는데 이거때문에 에러발생한건 아니겠죠..? 도데체 뭐가 문제일까요,,,ㅜㅜ 2021-08-18T02:39:46.109813+00:00 app[api]: Initial release by user yami654@naver.com 2021-08-18T02:39:46.109813+00:00 app[api]: Release v1 created by user yami654@naver.com 2021-08-18T02:39:46.646946+00:00 app[api]: Release v2 created by user yami654@naver.com 2021-08-18T02:39:46.646946+00:00 app[api]: Enable Logplex by user yami654@naver.com 2021-08-18T03:15:30.000000+00:00 app[api]: Build started by user yami654@naver.com 2021-08-18T03:15:44.946691+00:00 app[api]: Deploy 73698b81 by user yami654@naver.com 2021-08-18T03:15:44.946691+00:00 app[api]: Release v3 created by user yami654@naver.com 2021-08-18T03:15:44.962166+00:00 app[api]: Scaled to web@1:Free by user yami654@naver.com 2021-08-18T03:15:45.000000+00:00 app[api]: Build succeeded 2021-08-18T03:15:46.849567+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T03:15:48.467075+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T03:15:48.469419+00:00 app[web.1]: 2021-08-18T03:15:48.469575+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T03:15:48.469627+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T03_15_48_467Z-debug.log 2021-08-18T03:15:48.505118+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T03:15:48.569896+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T03:15:48.626165+00:00 heroku[web.1]: State changed from crashed to starting 2021-08-18T03:15:50.660116+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T03:15:53.686889+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T03:15:53.690042+00:00 app[web.1]: 2021-08-18T03:15:53.690189+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T03:15:53.690240+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T03_15_53_687Z-debug.log 2021-08-18T03:15:53.750250+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T03:15:53.806800+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T03:16:29.031061+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=9db03a45-a36b-4318-8f1c-f27106a60f71 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:16:29.318859+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=822c4e5d-f54b-4f94-89f7-32de2c363e92 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:16:56.093717+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=5b78920f-2090-4314-ae7b-76f0a34d84ad fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:16:56.351250+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=a4d3e8f6-15df-43dd-bd06-87464aa5d539 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:10.310433+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=1784bcf8-71c8-4f54-bd0e-6cedfc7fe220 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:10.568669+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=064cf586-4124-466d-a687-89018e88be2e fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:11.584852+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=4a4f46cb-4027-4c95-897d-7923853888a3 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:12.242006+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=5af7db2f-5506-4685-8fc7-a65c42478e93 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:34.661203+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=3d5bd02b-fe36-42c7-bbe1-67d30cc4a880 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:34.916719+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=4ae72cb2-4b77-4fed-9159-8085d8cc95de fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:43.967959+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=1d0c2380-b329-414e-b949-3b8d785c9515 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:44.215550+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=99cc3b7b-59e5-45ce-97bd-2ac3b924c141 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:49.191410+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=6dc3421e-14a6-44f5-86cf-83ad5a59ae45 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:49.447262+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=1e860558-9de6-4888-84cf-8192907c7a3d fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:09.673061+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=b0e60ff5-5d90-4a14-97de-f8966ce51ea2 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:09.943346+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=d4fe93be-86ac-4e72-be20-8004fca8998f fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:19.188733+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=d8196c34-287a-4261-b7fb-6f83415fe61d fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:19.451249+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=c21454e4-2f7e-4b54-af5e-dc37e4b93ecf fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:02.934781+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=cc23fbaa-d9c5-45dd-b031-4498bc4984a5 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:03.183677+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=5a51c5c7-9378-4ff6-8462-e1109f80a9be fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:11.206135+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=cdf37377-c415-49c7-b455-a9b7e9bef1a8 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:11.481510+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=3674f067-2568-4c61-addb-89db6da1b8a1 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:27.449471+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=8319b96a-4f03-4e29-80d6-a4e4ba98f620 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:27.702372+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=90561d74-07c9-4556-8bf8-db1df78da334 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:30.321622+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=fe037562-cde6-44cc-bbcc-c6e766cdd463 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:30.539718+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=a764b394-361b-49eb-91fa-b50ae9fa0a3b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:31:50.648306+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=8d02130d-89ad-46c2-8504-a33d575aff06 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:31:50.928533+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=b9d54f96-b322-4b5d-93b0-d2602c130bed fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:09.680426+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=7c096e8a-e82f-431f-bbab-d21c2bcc14d3 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:09.929380+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=e39fe4e0-24c7-4b6b-925a-c87efa0c73cc fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:44.023292+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=574e51bd-1d48-4171-a5b3-3c12685bb274 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:44.265175+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=65f2a6fc-a08c-4394-9053-2486522547ff fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:49:55.619602+00:00 heroku[web.1]: State changed from crashed to starting 2021-08-18T03:49:57.908905+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T03:50:00.787895+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T03:50:00.790751+00:00 app[web.1]: 2021-08-18T03:50:00.790882+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T03:50:00.790924+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T03_50_00_788Z-debug.log 2021-08-18T03:50:00.829962+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T03:50:00.888583+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T04:47:22.040630+00:00 heroku[web.1]: State changed from crashed to starting 2021-08-18T04:47:23.938189+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T04:47:26.623231+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T04:47:26.626063+00:00 app[web.1]: 2021-08-18T04:47:26.626226+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T04:47:26.626291+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T04_47_26_623Z-debug.log 2021-08-18T04:47:26.675330+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T04:47:26.722768+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T04:59:27.780512+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=e3d09c20-368a-432f-ad2a-4ab4cdeefcb3 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T04:59:28.020807+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=235b8b0f-70ef-4e0d-8ac0-99907387ee5b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:23.747029+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=da178449-52e5-4082-a741-453df062d347 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:24.008404+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=745f1df8-0c2f-40be-b823-ccf29dfe2147 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:35.322775+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=2a384ba4-681c-4d24-af5d-f3a6a9e83709 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:35.586404+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=f356c249-2d99-457e-b209-5a485dfd927b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:37.845651+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=526c17f1-869e-4523-beb8-143de52220cf fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:38.104850+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=6f99647e-f34e-4898-bf32-5913a4d0389b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:09:03.335905+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=8eaedaf6-3c59-45f5-9f75-674c65c9d163 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:09:03.620787+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=12df17e3-2e22-4d98-ad63-9235025d542f fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:10:08.265191+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=89dd0929-b95e-4585-8469-cd0d33bd55f4 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:10:08.510624+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=9f19c627-a641-435c-81f1-2dfd9c600aef fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:14:04.632877+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=f2f7127e-e289-4e58-82f7-eceab27b4940 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:14:04.951584+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=11236159-5349-43e4-a569-d0b4197b6215 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:21:55.255285+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=8d2a3344-ac03-429f-8357-60c7c0511194 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:21:55.520591+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=6020f0a7-c21f-4e69-bb83-51055bf0ccdc fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:23:53.023775+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=6a3f24b4-6a40-403b-8743-70215a913296 fwd="220.85.237.49" dyno= connect= 2021-08-18T05:23:53.307851+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=ac6d590c-dbf8-440f-ac59-a5a08a7673c2 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:24:53.686116+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=4e0da5d6-fdb7-4255-94c0-57fb96e51e7a fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https = connect= service= status=503 bytes= protocol=https " dyno= connect= service= status=503 bytes= protocol=https = connect= service= status=503 bytes= protocol=https 2021-08-18T05:38:18.019063+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=a2501b48-4edb-45f1-aab9-64b55e1694aa fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:38:18.293382+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=7193d07a-d0b7-4934-9de0-7ca0a240b062 fwd="220.85.237.49" dynoPS C:\Users\MY\Desktop\grab-market-server> heroku login heroku: Press any key to open up the browser to login or q to exit: Opening browser to https://cli-auth.heroku.com/auth/cli/browser/c0c09d30-5441-4b6c-ab7d-9a7ed03cd886?requestor=SFMyNTY.g2gDbQAAAA0yMjAuODUuMjM3LjQ5bgYACBfGV3sBYgABUYA.fcSC_jd_88o4pSO6E7ezMk1QwuEK1YvHq8LIyu5eV10 Logging in... done Logged in as yami654@naver.com PS C:\Users\MY\Desktop\grab-market-server> heroku --version PS C:\Users\MY\Desktop\grab-market-server> heroku login heroku: Press any key to open up the browser to login or q to exit: Opening browser to https://cli-auth.heroku.com/auth/cli/browser/45023056-1c41-434c-9af7-be4b5b993a88?requestor=SFMyNTY.g2gDbQAAAA0yMjAuODUuMjM3LjQ5bgYAGGHVV3sBYgABUYA.ntqCqu25FaUqvLiv60AsfNmSPZupxHWb7v119xGOz0U Logging in... done PS C:\Users\MY\Desktop\grab-market-server> heroku git:clone -a my-market-server Cloning into 'my-market-server'... remote: Compressing objects: 100% (4/4), done. Unpacking objects: 100% (5/5), 837 bytes | 41.00 KiB/s, done. PS C:\Users\MY\Desktop\grab-market-server> ^C PS C:\Users\MY\Desktop\grab-market-server> cd my-market-server PS C:\Users\MY\Desktop\grab-market-server\my-market-server> git add . PS C:\Users\MY\Desktop\grab-market-server\my-market-server> git commit -am "make it better" On branch main Your branch is up to date with 'heroku/main'. nothing to commit, working tree clean PS C:\Users\MY\Desktop\grab-market-server\my-market-server> git push heroku master error: src refspec master does not match any error: failed to push some refs to 'https://git.heroku.com/my-market-server.git' PS C:\Users\MY\Desktop\grab-market-server\my-market-server> git push heroku main Everything up-to-date PS C:\Users\MY\Desktop\grab-market-server\my-market-server> heroku logs --tail 2021-08-18T02:39:46.109813+00:00 app[api]: Initial release by user yami654@naver.com 2021-08-18T02:39:46.109813+00:00 app[api]: Release v1 created by user yami654@naver.com 2021-08-18T02:39:46.646946+00:00 app[api]: Release v2 created by user yami654@naver.com 2021-08-18T02:39:46.646946+00:00 app[api]: Enable Logplex by user yami654@naver.com 2021-08-18T03:15:30.000000+00:00 app[api]: Build started by user yami654@naver.com 2021-08-18T03:15:44.946691+00:00 app[api]: Deploy 73698b81 by user yami654@naver.com 2021-08-18T03:15:44.946691+00:00 app[api]: Release v3 created by user yami654@naver.com 2021-08-18T03:15:44.962166+00:00 app[api]: Scaled to web@1:Free by user yami654@naver.com 2021-08-18T03:15:45.000000+00:00 app[api]: Build succeeded 2021-08-18T03:15:46.849567+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T03:15:48.467075+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T03:15:48.469419+00:00 app[web.1]: 2021-08-18T03:15:48.469575+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T03:15:48.469627+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T03_15_48_467Z-debug.log 2021-08-18T03:15:48.505118+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T03:15:48.569896+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T03:15:48.626165+00:00 heroku[web.1]: State changed from crashed to starting 2021-08-18T03:15:50.660116+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T03:15:53.686889+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T03:15:53.690042+00:00 app[web.1]: 2021-08-18T03:15:53.690189+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T03:15:53.690240+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T03_15_53_687Z-debug.log 2021-08-18T03:15:53.750250+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T03:15:53.806800+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T03:16:29.031061+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=9db03a45-a36b-4318-8f1c-f27106a60f71 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:16:29.318859+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=822c4e5d-f54b-4f94-89f7-32de2c363e92 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:16:56.093717+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=5b78920f-2090-4314-ae7b-76f0a34d84ad fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:16:56.351250+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=a4d3e8f6-15df-43dd-bd06-87464aa5d539 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:10.310433+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=1784bcf8-71c8-4f54-bd0e-6cedfc7fe220 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:10.568669+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=064cf586-4124-466d-a687-89018e88be2e fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:11.584852+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=4a4f46cb-4027-4c95-897d-7923853888a3 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:12.242006+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=5af7db2f-5506-4685-8fc7-a65c42478e93 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:34.661203+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=3d5bd02b-fe36-42c7-bbe1-67d30cc4a880 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:17:34.916719+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=4ae72cb2-4b77-4fed-9159-8085d8cc95de fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:43.967959+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=1d0c2380-b329-414e-b949-3b8d785c9515 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:44.215550+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=99cc3b7b-59e5-45ce-97bd-2ac3b924c141 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:49.191410+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=6dc3421e-14a6-44f5-86cf-83ad5a59ae45 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:20:49.447262+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=1e860558-9de6-4888-84cf-8192907c7a3d fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:09.673061+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=b0e60ff5-5d90-4a14-97de-f8966ce51ea2 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:09.943346+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=d4fe93be-86ac-4e72-be20-8004fca8998f fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:19.188733+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=d8196c34-287a-4261-b7fb-6f83415fe61d fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:21:19.451249+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=c21454e4-2f7e-4b54-af5e-dc37e4b93ecf fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:02.934781+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=cc23fbaa-d9c5-45dd-b031-4498bc4984a5 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:03.183677+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=5a51c5c7-9378-4ff6-8462-e1109f80a9be fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:11.206135+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=cdf37377-c415-49c7-b455-a9b7e9bef1a8 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:22:11.481510+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=3674f067-2568-4c61-addb-89db6da1b8a1 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:27.449471+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=8319b96a-4f03-4e29-80d6-a4e4ba98f620 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:27.702372+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=90561d74-07c9-4556-8bf8-db1df78da334 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:30.321622+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=fe037562-cde6-44cc-bbcc-c6e766cdd463 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:28:30.539718+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=a764b394-361b-49eb-91fa-b50ae9fa0a3b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:31:50.648306+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=8d02130d-89ad-46c2-8504-a33d575aff06 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:31:50.928533+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=b9d54f96-b322-4b5d-93b0-d2602c130bed fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:09.680426+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=7c096e8a-e82f-431f-bbab-d21c2bcc14d3 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:09.929380+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=e39fe4e0-24c7-4b6b-925a-c87efa0c73cc fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:44.023292+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=574e51bd-1d48-4171-a5b3-3c12685bb274 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:32:44.265175+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=65f2a6fc-a08c-4394-9053-2486522547ff fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T03:49:55.619602+00:00 heroku[web.1]: State changed from crashed to starting 2021-08-18T03:49:57.908905+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T03:50:00.787895+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T03:50:00.790751+00:00 app[web.1]: 2021-08-18T03:50:00.790882+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T03:50:00.790924+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T03_50_00_788Z-debug.log 2021-08-18T03:50:00.829962+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T03:50:00.888583+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T04:47:22.040630+00:00 heroku[web.1]: State changed from crashed to starting 2021-08-18T04:47:23.938189+00:00 heroku[web.1]: Starting process with command `npm start` 2021-08-18T04:47:26.623231+00:00 app[web.1]: npm ERR! missing script: start 2021-08-18T04:47:26.626063+00:00 app[web.1]: 2021-08-18T04:47:26.626226+00:00 app[web.1]: npm ERR! A complete log of this run can be found in: 2021-08-18T04:47:26.626291+00:00 app[web.1]: npm ERR! /app/.npm/_logs/2021-08-18T04_47_26_623Z-debug.log 2021-08-18T04:47:26.675330+00:00 heroku[web.1]: Process exited with status 1 2021-08-18T04:47:26.722768+00:00 heroku[web.1]: State changed from starting to crashed 2021-08-18T04:59:27.780512+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=e3d09c20-368a-432f-ad2a-4ab4cdeefcb3 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T04:59:28.020807+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=235b8b0f-70ef-4e0d-8ac0-99907387ee5b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:23.747029+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=da178449-52e5-4082-a741-453df062d347 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:24.008404+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=745f1df8-0c2f-40be-b823-ccf29dfe2147 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:35.322775+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/products" host=my-market-server.herokuapp.com request_id=2a384ba4-681c-4d24-af5d-f3a6a9e83709 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:35.586404+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=f356c249-2d99-457e-b209-5a485dfd927b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:37.845651+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=526c17f1-869e-4523-beb8-143de52220cf fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:08:38.104850+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=6f99647e-f34e-4898-bf32-5913a4d0389b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:09:03.335905+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=8eaedaf6-3c59-45f5-9f75-674c65c9d163 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:09:03.620787+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=12df17e3-2e22-4d98-ad63-9235025d542f fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:10:08.265191+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=89dd0929-b95e-4585-8469-cd0d33bd55f4 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:10:08.510624+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=9f19c627-a641-435c-81f1-2dfd9c600aef fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:14:04.632877+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=f2f7127e-e289-4e58-82f7-eceab27b4940 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:14:04.951584+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=11236159-5349-43e4-a569-d0b4197b6215 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:21:55.255285+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=8d2a3344-ac03-429f-8357-60c7c0511194 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:21:55.520591+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=6020f0a7-c21f-4e69-bb83-51055bf0ccdc fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:23:53.023775+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=6a3f24b4-6a40-403b-8743-70215a913296 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:23:53.307851+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=ac6d590c-dbf8-440f-ac59-a5a08a7673c2 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:24:53.686116+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=4e0da5d6-fdb7-4255-94c0-57fb96e51e7a fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:24:53.992428+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=b17dc872-d735-43f9-94c1-fde406b2b991 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:26:08.066149+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=21ea3de6-d52a-4f31-be9a-433d7953b886 fwd="220.85.237.49" dyno= connect= 2021-08-18T05:26:08.302062+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=058de701-f1dd-4b42-bc4b-6fba3313681b fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:38:18.019063+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=a2501b48-4edb-45f1-aab9-64b55e1694aa fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:38:18.293382+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=7193d07a-d0b7-4934-9de0-7ca0a240b062 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:42:40.415504+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=5a65d433-410f-494d-9b29-63dfec32d251 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:42:40.683371+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=6f924e14-8a1f-4e77-b940-ced907185378 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:58:25.254701+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=my-market-server.herokuapp.com request_id=c91b4d47-9199-4767-a1ea-451e7bf35bc5 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 2021-08-18T05:58:25.534788+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=my-market-server.herokuapp.com request_id=c624ef72-68af-490f-8d27-8fd34469d9d2 fwd="220.85.237.49" dyno= connect= service= status=503 bytes= protocol=https 아래는 index.js 코드인데 올려주신 소스코드와 비교해봤을 때 틀린곳은 없어보였는데 놓친부분이 있을까요..? const express = require("express"); const cors = require("cors"); const app = express(); const models = require("./models"); const multer = require("multer"); const upload = multer({ storage: multer.diskStorage({ destination: function (req, file, cb) { cb(null, "uploads/"); }, filename: function (req, file, cb) { cb(null, file.originalname); }, }), }); const port = process.env.PORT || 8080; app.use(express.json()); app.use(cors()); app.use("/uploads", express.static("uploads")); app.get("/banners", (req, res) => { models.Banner.findAll({ limit: 2, }) .then((result) => { res.send({ banners: result, }); }) .catch((error) => { console.error(error); res.status(500).send("에러가 발생했습니다."); }); }); app.get("/products", (req, res) => { models.Product.findAll({ order: [["createdAt", "DESC"]], attributes: [ "id", "name", "price", "createdAt", "seller", "imageUrl", "soldout", ], }) .then((result) => { console.log("PRODUCTS: ", result); res.send({ products: result, }); }) .catch((error) => { console.error(error); res.status(400).send("에러 발생"); }); }); app.post("/products", (req, res) => { const body = req.body; const { name, description, price, seller, imageUrl } = body; if (!name || !description || !price || !seller || !imageUrl) { res.status(400).send("모든필드를 입력해주세요."); } models.Product.create({ description, price, seller, imageUrl, name }) .then((result) => { console.log("상품 생성 결과 : ", result); res.send({ result, }); }) .catch((error) => { console.error(error); res.status(400).send("상품 업로드에 문제가 발생했습니다."); }); }); app.get("/products/:id", (req, res) => { const params = req.params; const { id } = params; models.Product.findOne({ where: { id: id, }, }) .then((result) => { console.log("PRODUCTS :", result); res.send({ product: result, }); }) .catch((error) => { console.error(error); return res.status(400).send("상품 조회에 에러가 발생했습니다."); }); }); app.post("/image", upload.single("image"), (req, res) => { const file = req.file; console.log(file); res.send({ imageUrl: file.path, }); }); app.post("/purchase/:id", (req, res) => { const { id } = req.params; models.Product.update( { soldout: 1, }, { where: { id, }, } ) .then((reuslt) => { res.send({ result: true, }); }) .catch((error) => { res.status(500).send("에러가 발생했습니다."); }); }); app.listen(port, () => { console.log("그랩의 쇼핑몰 서버가 돌아가고 있습니다."); models.sequelize .sync() .then(() => { console.log("DB 연결 성공!"); }) .catch((error) => { console.error(err); console.log("DB 연결 에러"); process.exit(); }); });
-
미해결내 업무를 대신 할 파이썬(Python) 웹크롤링 & 자동화 (feat. 주식, 부동산 데이터 / 인스타그램)
find 강의 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 관련 문의는 1:1 문의하기를 이용해주세요. 강의에서는 사진 1처럼 같은 결과값이 나오는 문법이라 하셨는데 [사진2]23과 24열을 같은 결과값이 나오지 않습니다. 왜그런지 알수있나요?
-
미해결풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
질문 드려요
좋은 강의 감사드립니다 처음 도커를 접했습니다.(사실 linux 운영체제 조차 익숙치가 않습니다) 강의를 듣고, 지금 Node로 진행중인 프로젝트를 docker로 감싸서 뛰어보자라는 생각이 들어 이것 저것 해보는 데 너무 어려워요...ㅜ compose 파일을 만들고 실행을 시켜보았지만, 당연히 정상 작동을 하지 않습니다. 1. 브라우저에서 80번 포트로 요청을 보내면 Bad Gatway 502 2. docker logs node : /bin/sh: 1: ./docker-entrypoint.sh: Permission denied 3. docker logs mysqldb : 2021-08-18 05:30:03+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.35-1debian10 started. 2021-08-18 05:30:03+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' 2021-08-18 05:30:03+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.35-1debian10 started. 2021-08-18 05:30:04+00:00 [ERROR] [Entrypoint]: MYSQL_USER="root", MYSQL_USER and MYSQL_PASSWORD are for configuring a regular user and cannot be used for the root user Remove MYSQL_USER="root" and use one of the following to control the root user password: - MYSQL_ROOT_PASSWORD - MYSQL_ALLOW_EMPTY_PASSWORD - MYSQL_RANDOM_ROOT_PASSWORD 컨테이너 3개 뛰우는데, 3개다 오류가 나오네요 ㅜㅜ 소스 전체를 보여드리는 게 송구스럽지만, 지금 어디가 잘못되었는지 조차 알길이 없어 질문을 드려요.. 아래 소스처럼 설정을 했는데, 힌트를 조금 주시면 안될까요??ㅜ https://github.com/DaeseongLee/testDocker