inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

기존 강의 자료 관련 주소, 새 강의 쿠폰

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

graphql 연습 관련 주소가 더 이상 유지되고 있지 않는 것 같습니다. 일단은 새 강의 쿠폰 관련 문의 드렸는데, 이전 강의에 해당하는 주소들은 이제 유지하지 않는 건가요?

  • react
  • node.js
  • seo
  • graphql
  • next.js
fruitpigfoot 댓글 2 좋아요 1 조회수 129

chaptr13 강의자료, chapter14~

미해결

[PL 0302] 데이터 연산을 위한 파이썬 - 넘파이 마스터 클래스

안녕하세요, 강의 잘 듣고 있습니다. 그런데.. chapter13의 강의자료가 올라와 있지 않네요? 혹시 올려주실 수 있을까요? 그리고 chapter14이후부터는 강의가 언제 올라오는지 질문드립니다.

  • python
  • numpy
  • 인공지능(ai)
jjunyugi8537 댓글 2 좋아요 0 조회수 135

한글 문서에 사용된 폰트명 추출

미해결

직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피

안녕하세요. 업무를 하다 필요한 기능이 있어서 여쭤봅니다. 한글 문서들이 여러 개가 하나의 폴더에 들어 있을 때 각각의 파일에 사용된 폰트명을 하나의 파일로 다음과 같이 추출하는 방법을 알고 싶습니다. [예 폰트명 파일.txt] 문서1.hwp: 함초롱바탕, 맑은고딕 문서2.hwp: 함초롱바탕, 고딕 문서3.hwp: 바탕, 신명조, 고딕 ...... 문서정보에 있는 폰트명을 가져오면 될 것 같은데, 그 정보를 가져오지 못하고 계속 실패를 하네요. 감사합니다.

  • python
  • 한컴오피스
양현주 댓글 1 좋아요 1 조회수 728

키워드출력이 이상합니다..

미해결

[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

키워드는 강의해주신 것처럼 아래와 같이 처리가 되어 있음에도 불구하고, 결과값이 ['NFT', 'cryptocurrency', 'collateral', 'personal property', 'AI', 'NFT', '물건', '동산', '가상화폐', '인공지능'] 으로 나옵니다. 이유가 뭘까요.. keywords = soup.select_one(".infoDetailL>ul>li:nth-of-type(7)>div").text.split(';') keywords = [keyword.strip() for keyword in keywords]

  • python
  • 웹-크롤링
규식 댓글 2 좋아요 0 조회수 65

auth.ts 에서 오류가 납니다.

미해결

Next + React Query로 SNS 서비스 만들기

안녕하세요, 클론코딩 강좌 따라하던중 오류가 나는데 강사님 깃헙 클론해서 완성본 봐도 같은 오류가 나는것 같은데 무슨오류일까요.. ?

  • react
  • next.js
  • react-query
  • next-auth
  • msw
rhdbwls5766 댓글 2 좋아요 0 조회수 204

Colab에서 변수명을 그냥 입력하는 것과 print를 통해 보는 것의 차이

미해결

파이썬 프로그래밍

안녕하세요, 비전공자며 부산대학교 소프트웨어융합교육원 - 파이썬 프로그래밍 무료강의를 통해 처음으로 프로그래밍에 대해 공부를 시도해보는 학생입니다. 다름아니라 본 강의 2-1에서 실습하는 내용 도중 궁금한 점이 생겼으나 해당 부분에 대해 스스로 답을 찾지 못하여 잘 아시는 분들께 여쭤보고 싶어 질문 남깁니다. 자료형-문자열 출력과 관련해서, colab 및 일부 개발환경에서는 문자열 변수명을 코드셀 마지막에 그냥 입력하면 출력된다고 하여 어퍼스트로피와 인용구가 혼용된 문자열을 출력하고자 시도하였습니다. 다만 그냥 출력하면 어퍼스토로피 앞에 저 원화기호(W) 닮은 기호... 가 나오고 print를 통해서 실행하면 안뜨더라구요. 이 차이가 궁금한데 아직 별도의 파이썬 교재를 구입하여 공부중이지도 않고 용어를 뭐라고 검색해야할지 조차 감이 안잡혀 사소한 내용이지만 질문 남깁니다.

  • python
genovese1206 댓글 1 좋아요 0 조회수 149

클라이언트 , 서버 컴포넌트의 사용 범위

해결됨

한 입 크기로 잘라먹는 Next.js

안녕하세요 정환님. 완강하고 혼자 google oAuth 와 jwt를 이용해서 로그인을 구현하는 와중에 아무리 찾아봐도 도저히 개념이 잡히지 않는 부분이 있어서 질문 드립니다. nextjs에서는 대부분의 컴포넌트들을 서버컴포넌트로 쓰는것을 권장하고, 상호작용을 위해 hydration이 필요한 컴포넌트들을 클라이언트 컴포넌트로 사용하라고 강의에서 배웠고 그렇게 구현을 하고 있습니다. nextjs의 로그인을 찾아보면 jwt로 access토큰과 refresh 토큰을 이용해서 구현을 하는 글들이 많이 있는데, access토큰은 로컬 스토리지나 state에 담고, refresh 토큰은 httpOnly 쿠키에 담으라고 합니다. 구현을 하다보니 컴포넌트에서 데이터를 페칭을 할때 서버에 access 토큰을 헤더에 담아 보내기 위해서는 로컬 스토리지나 state를 사용하기위해 무조건 클라이언트 컴포넌트를 사용해야 하는데 , 원래 이래야 하는 건가요? 이렇게 되면 데이터 페칭이 필요한 컴포넌트들을 무조건 클라이언트 컴포넌트가 되어버립니다. 아니면 서버 컴포넌트를 사용하고 페칭이 필요할때는 쿠키에 있는 refresh 토큰으로 매번 검증을 해야하는것인지.. 강의에 많이 벗어난 내용 같긴 한데 이렇게 사용하는게 맞는건인지 .. 개념이 잘 잡히지 않아 질문드립니다. 강의는 정말 잘 들었습니다. 새해 복 많이 받으세요.

  • react
  • typescript
  • next.js
JunWoo Kim 댓글 1 좋아요 0 조회수 155

Consumer Instances 관련 질문 있습니다.

미해결

파이썬/장고로 웹채팅 서비스 만들기 (Feat. Channels) - 기본편

Consumer Instances를 어떻게 생각해야될지 이해가 잘 안되어 질문드립니다. 강의에 채널스 외부 그룹 채널 레이어 등을 그림으로 친절하게 표현해주셨는데 제가 정확하게 이해가 안되고 있습니다. 설명 부탁드려도 될까요? 감사합니다.

  • python
  • django
  • django-channels
sunnnwo 댓글 2 좋아요 0 조회수 106

회사 사이트 설명(노션) 사이트 접속 문의

해결됨

React, Node.js, MongoDB로 만드는 나만의 회사 웹사이트: 완벽 가이드

강의중 설명에서 알려주시는 노션 사이트는 어떻게 접속해야 하나요?

  • HTML/CSS
  • javascript
  • react
  • node.js
  • mongodb
Lee youngchae 댓글 1 좋아요 0 조회수 190

새 강의 쿠폰 관련 문의

해결됨

[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스

안녕하세요!! 강의 너무 잘 듣고 있습니다! 다름이 아니라 css 거의 마지막까지 왔는데 새 강의가 나왔다는 사실을 알게 되어서 저도 새로운 버전으로 강의를 수강하고 싶은데요! ㅠㅠ 실제로 82강에 나오는 my-shop 깃헙 페이지가 다운되기도 했고 해서 새로운 버전으로 꼭 수강하고 싶습니다!! 저도 쿠폰을 받을 수 있을까요? 좋은 강의 제공해 주셔서 정말 감사합니다!

  • react
  • node.js
  • seo
  • graphql
  • next.js
이세은 댓글 2 좋아요 0 조회수 125

LiveDemo 페이지 정상작동하나요?

미해결

Supabase, Next 풀 스택 시작하기 (feat. 슈파베이스 OAuth, nextjs 14)

강의를 본격적으로 듣기에 앞서 Live Demo를 살펴보려했는데, 링크 접속 자체에는 문제가 없으나, 로그인 클릭시 리다이렉트 url이 잘못되었는지 정확한 이유는 모르곘으나 "This site can't be reached" 에러가 뜨네요?! 확인 좀 해주실 수 있을까요?!

  • react
  • 클론코딩
  • next.js
  • supabase
치현 댓글 2 좋아요 2 조회수 158

context 강의를 들으면서 이해가 안가는 부분이 있습니다.

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

안녕하세요 이전 memo 강의에서 useCallback를 들고 context 듣다 보니 궁금한 사항이 있습니다. 리로딩 방지를 위한 onCreate, onUpdate, onDelete에 이전 강의에 useCallback이 되어있는 상태에서 TodoDispatchContext하는 과정에서 useMemo로 리턴해서 전달하는데 context를 사용시 한번만 리로딩 방지를 위해서는 useMemo와 useCallback를 중복으로 사용 되어야하는걸까요?? 아님 useMemo를 사용하여 useCallback는 사용해도 안해도 무방한지 영상을 보다가 궁금합니다...! 추가적으로 이건 아주 소소한 궁금증인데 함수를 쓰실때 카멜표기법과 파스칼표기법을 번갈아가면서 쓰시는데 어떤 용도에 따라서 사용하시는지 궁금합니다..ㅎㅎㅎ

  • javascript
  • react
  • node.js
신지연 댓글 2 좋아요 0 조회수 280

console에 Object로 출력되지 않는 이유?

해결됨

한 입 크기로 잘라먹는 Next.js

🚨 아래의 가이드라인을 꼭 읽고 질문을 올려주시기 바랍니다 🚨 질문 하시기 전에 꼭 확인해주세요 - 질문 전 구글에 먼저 검색해보세요 (답변을 기다리는 시간을 아낄 수 있습니다) - 코드에 오타가 없는지 면밀히 체크해보세요 (Date와 Data를 많이 헷갈리십니다) - 이전에 올린 질문에 달린 답변들에 꼭 반응해주세요 (질문에 대한 답변만 받으시고 쌩 가시면 속상해요 😢 ) 질문 하실때 꼭 확인하세요 - 제목만 보고도 무슨 문제가 있는지 대충 알 수 있도록 자세한 제목을 정해주세요 (단순 단어 X) - 질문의 배경정보를 제공해주세요 (이 문제가 언제 어떻게 발생했고 어디까지 시도해보셨는지) - 문제를 재현하도록 코드샌드박스나 깃허브 링크로 전달해주세요 (프로젝트 코드에서 문제가 발생할 경우) - 답변이 달렸다면 꼭 확인하고 반응을 남겨주세요 - 강의의 몇 분 몇 초 관련 질문인지 알려주세요! - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 2.2)페이지 라우팅 설정하기 9:48 저는 Object 객체가 출력되지 않고 이렇게 출력이 되는데 {} 인걸 보니 객체로 불려와 지는건 알겠는데 왜 Object로 안오고 저렇게 오는지 궁금합니다

  • react
  • typescript
  • next.js
yyyeong0103 댓글 2 좋아요 0 조회수 183

네이버 쇼핑 링크 변경에 따른 실습 문의

미해결

[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)

안녕하세요 크롤링이 뭔지 아예 모르다가 이게 조금씩 눈을 뜨고 있는 뉴비입니다~! 네이버 쇼핑 홈페이지 변경 및 HTML 구조 변경으로 설명이 한번 더 되면 좋겠습니다 강의에 나온 것처럼 나무태그를 찾으려 해도 현재 기준 네이버 쇼핑 HTML 구조를 현재 강의 내용을 기반으로 따라 할 수가 없습니다ㅠㅠ(상위 클래스로 검색해도 안나오는..??) https://search.shopping.naver.com/ns/search?query=%EB%8B%AD%EA%B0%80%EC%8A%B4%EC%82%B4 기회가 된다면 업데이트를.. 안된다면 유투브로 보여주셔도 짤막하게라도 보여주시면 좋을거 같습니다!! 감사합니다~!

  • python
  • 웹-크롤링
한노크 댓글 2 좋아요 0 조회수 128

시간 기반의 ISR 사용 시 revalidate가 트리거 되는 시점

해결됨

한 입 크기로 잘라먹는 Next.js

안녕하세요, 선생님. 강의 잘듣고 있습니다. 시간 기반의 ISR 렌더링을 사용할 때 헷갈리는 부분이 있어서 질문 남깁니다. 저번 시간까지는 revalidate 시간을 설정하면 유저가 웹 페이지에 유입된 시점부터 지정한 시간 주기로 페이지를 재생성한다고 생각했습니다. 근데 이번 강의의 1:47초 부분을 보니까 클라이언트의 요청과는 관계없이 빌드된 시점부터 revalidate 되는 것인지 헷갈리더라고요. 예를 들어 revalidate를 60초로 설정하면 빌드된 시점부터 60초 주기로 페이지가 재성성되며 API를 호출하게 되는 것으로 이해해도 괜찮을까요?

  • react
  • typescript
  • next.js
메가 댓글 2 좋아요 0 조회수 226

Editor 컴포넌트 리렌더링

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

아래 질문들을 보던 중 Editor 부분이 리렌더링 된다는 글을 보고 제 화면도 확인한 결과 리렌더링 된 걸 확인해서 Editor.jsx 또한 아래와 같이 memo메서드를 감싸줬더니 리렌더링 되지 않는 것을 확인했습니다. import "./Editor.css"; import { useState, useRef, memo } from "react"; const Editor = ({ onCreate }) => { const [content, setContent] = useState(""); const contentRef = useRef(); const onChangeContent = (e) => { setContent(e.target.value); }; const onKeyDown = (e) => { if (e.keyCode === 13) { onSubmit(); } }; const onSubmit = () => { if (content.trim() === "") { contentRef.current.focus(); return; } onCreate(content.trim()); setContent(""); }; return ( <div className="Editor"> <input ref={contentRef} value={content} onKeyDown={onKeyDown} onChange={onChangeContent} placeholder="새로운 Todo..." /> <button onClick={onSubmit}>추가</button> </div> ); }; export default memo(Editor); Editor.jsx의 props가 onCreate 메서드인데 이를 App.jsx에서 useCallback 처리를 해줘서 그냥 export default memo(Editor); 을 해줘도 리렌더링 방지가 가능했던 것인지 궁금해서 질문 남깁니다! App.jsx 코드입니다! import "./App.css"; import { useState, useRef, useReducer, useCallback } from "react"; import Header from "./components/Header"; import Editor from "./components/Editor"; import List from "./components/List"; const mockData = [ { id: 0, isDone: false, content: "운동하기", date: new Date().getTime(), }, { id: 1, isDone: false, content: "풋살하기", date: new Date().getTime(), }, { id: 2, isDone: false, content: "게임하기", date: new Date().getTime(), }, ]; function reducer(state, action) { switch (action.type) { case "CREATE": return [action.data, ...state]; case "UPDATE": return state.map((item) => item.id === action.targetId ? { ...item, isDone: !item.isDone } : item ); case "DELETE": return state.filter((item) => item.id !== action.targetId); default: return state; } } function App() { const [todos, dispatch] = useReducer(reducer, mockData); const idRef = useRef(3); const onCreate = useCallback((content) => { dispatch({ type: "CREATE", data: { id: idRef.current++, isDone: false, content: content, date: new Date().getTime(), }, }); }, []); const onUpdate = useCallback((targetId) => { dispatch({ type: "UPDATE", targetId: targetId, }); }, []); const onDelete = useCallback((targetId) => { dispatch({ type: "DELETE", targetId: targetId, }); }, []); return ( <div className="App"> <Header /> <Editor onCreate={onCreate} /> <List todos={todos} onUpdate={onUpdate} onDelete={onDelete} /> </div> ); } export default App;

  • javascript
  • react
  • node.js
kwkw 댓글 2 좋아요 0 조회수 140

채팅에 대해서 질문이 있습니다. ㅠㅠ

미해결

... // WebSocket 연결 및 STOMP 클라이언트 설정 useEffect(() => { const token = sessionStorage.getItem("accessToken"); // 세션에서 액세스 토큰을 가져옴 const socket = new SockJS(`http://localhost:8080/ws/chat`); // WebSocket 연결 const client = Stomp.over(socket); stompClientRef.current = client; // STOMP 연결 client.connect( { Authorization: `Bearer ${token}` }, (frame) => { setConnected(true); console.log("STOMP 연결 성공", frame); // 해당 채팅방에 대한 메시지 구독 client.subscribe(`/exchange/chat.exchange/room.${roomId}`, (msg) => { const receivedMessage = JSON.parse(msg.body); if (receivedMessage.type === "PLACE") { const place = JSON.parse(receivedMessage.message); setMessages((prev) => [...prev, { type: "PLACE", place }]); } else { setMessages((prev) => [...prev, receivedMessage]); } }); }, (error) => { console.error("STOMP 연결 실패:", error); alert("STOMP 연결 실패! 서버가 실행 중인지 확인하세요."); } ); // 채팅방 목록 가져오기 fetch(`${BASE_URL}/chat/rooms`, { headers: { Authorization: `Bearer ${token}`, }, }) .then((res) => res.json()) .then((data) => setChatRooms(data)) .catch((error) => console.error("채팅방 목록 가져오기 실패:", error)); return () => { if (client.connected) client.disconnect(); }; }, [roomId]); // 메시지 보내는 기능 const sendMessage = (message, type = "TALK") => { const token = localStorage.getItem("accessToken"); stompClientRef.current?.send( `/pub/chat.message.${roomId}`, { Authorization: `Bearer ${token}` }, JSON.stringify({ sender: currentUser, message, roomId, type, timestamp: new Date().toISOString(), }) ); if (type === "TALK") setNewMessage(""); }; ... 리액트는 다음과 같이 구성하고 @Controller @RequiredArgsConstructor @Log4j2 public class ChatController implements ChatControllerDocs { private static final String CHAT_EXCHANGE_NAME = " chat.exchange "; private final static String CHAT_QUEUE_NAME = "chat.queue"; private final ChatService chatService; private final RabbitTemplate rabbitTemplate; @Override // 클라이언트에서 서버로 보낸 메시지를 메시지를 라우팅 // @MessageMapping("chat.message")로 설정하여 클라이언트로부터 /pub/chat.message 목적지로 전송된 STOMP 메시지를 처리한다. /*RabbitMQ*/ @MessageMapping("chat.message.{roomId}") /*STOMP*/ // @MessageMapping("/{roomId}") // 구독한 클라이언트에게 response를 제공할 url 정의 // @SendTo("/topic/{roomId}") public ResponseEntity<?> sendMessage( // @Payload: 메시지의 body를 정의한 객체에 매핑합니다. @Payload ChatMessageDTO message, // @DestinationVariable: 구독 및 메시징의 동적 url 변수를 설정. RestAPI의 @PathValue와 같다. @DestinationVariable int roomId) { try { ChatMessageDTO msg = chatService.sendMessage(message); log.info ("Sent message: {}", msg); if (msg != null) { // RabbitMQ으로 메시지 전송 // template.convertAndSend() 메소드를 사용하여 메시지를 RabbitMQ로 전송한다. // 메시지는 chat.exchange 로 전송되며, 라우팅 키는 room. + 메시지의 방 ID로 구성된다. rabbitTemplate.convertAndSend(CHAT_EXCHANGE_NAME, "room." + roomId, message); } else { log.error("Failed to create chat message. User might not be in the chat room. User: {}, Room: {}", message.getSender(), message.getRoomId()); } return ResponseEntity.ok().body(msg); } catch (Exception e) { log.error("Error processing message: ", e); throw new ChatException(e.getMessage()); } } @Configuration @EnableRabbit @RequiredArgsConstructor public class RabbitConfig { // Queue (큐): RabbitMQ에서 메시지를 저장하는 장소 private static final String CHAT_QUEUE_NAME = "chat.queue"; // Exchange (교환기): 메시지를 Queue로 라우팅(보내는) 역할 private static final String CHAT_EXCHANGE_NAME = "chat.exchange"; // Routing Key (라우팅 키): Exchange가 메시지를 어떤 Queue로 보낼지를 결정하는 데 사용 private static final String ROUTING_KEY = "room.*"; @Value("${spring.rabbitmq.host}") private String host; @Value("${spring.rabbitmq.port}") private int port; @Value("${spring.rabbitmq.username}") private String userName; @Value("${spring.rabbitmq.password}") private String password; // Queue 등록 @Bean public Queue queue() { return new Queue(CHAT_QUEUE_NAME, true); } // Exchange 등록 @Bean public TopicExchange exchange() { return new TopicExchange(CHAT_EXCHANGE_NAME); } // Exchange와 Queue바인딩 @Bean public Binding binding(Queue queue, TopicExchange exchange) { return BindingBuilder .bind(queue) .to(exchange) .with(ROUTING_KEY); } // RabbitMQ와의 메시지 통신을 담당하는 클래스 @Bean public RabbitTemplate rabbitTemplate() { RabbitTemplate rabbitTemplate = new RabbitTemplate(connectionFactory()); rabbitTemplate.setMessageConverter(jsonMessageConverter()); rabbitTemplate.setRoutingKey(ROUTING_KEY); return rabbitTemplate; } // RabbitMQ와의 연결을 관리하는 클래스 @Bean public ConnectionFactory connectionFactory() { CachingConnectionFactory factory = new CachingConnectionFactory(); factory.setHost(host); factory.setPort(port); factory.setVirtualHost("/"); factory.setUsername(userName); factory.setPassword(password); return factory; } // Queue를 구독(Subscribe)하는 걸 어떻게 처리하느냐에 따라 필요함. 당장은 없어도 됨. @Bean public SimpleRabbitListenerContainerFactory simpleRabbitListenerContainerFactory(ConnectionFactory connectionFactory, MessageConverter messageConverter) { SimpleRabbitListenerContainerFactory factory = new SimpleRabbitListenerContainerFactory(); factory.setConnectionFactory(connectionFactory); factory.setMessageConverter(messageConverter); return factory; } @Bean public RabbitMessagingTemplate rabbitMessagingTemplate(RabbitTemplate rabbitTemplate) { return new RabbitMessagingTemplate(rabbitTemplate); } // 메시지를 JSON형식으로 직렬화하고 역직렬화하는데 사용되는 변환기 // RabbitMQ 메시지를 JSON형식으로 보내고 받을 수 있음 @Bean public Jackson2JsonMessageConverter jsonMessageConverter() { //LocalDateTime serializable을 위해 ObjectMapper objectMapper = new ObjectMapper(); objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, true); objectMapper.registerModule(dateTimeModule()); Jackson2JsonMessageConverter converter = new Jackson2JsonMessageConverter(objectMapper); return converter; } @Bean public Module dateTimeModule() { return new JavaTimeModule(); } } ... @Override public void registerStompEndpoints(StompEndpointRegistry registry) { registry .setErrorHandler(stompExceptionHandler) // 소켓 연결 URI다. 소켓을 연결할 때 다음과 같은 통신이 이루어짐 .addEndpoint("/ws/chat") .setAllowedOriginPatterns("http://localhost:5173") // SocketJS를 통해 연결 지원 .withSockJS(); } @Override public void configureClientInboundChannel(ChannelRegistration registration) { log.info("--------------"); log.info("동작함"); registration.interceptors(stompHandler); } @Override public void configureMessageBroker(MessageBrokerRegistry registry) { // url을 chat/room/3 -> chat.room.3으로 참조하기 위한 설정 registry.setPathMatcher(new AntPathMatcher(".")); registry.setUserDestinationPrefix("/sub"); // 클라이언트 구독 경로 // RabbitMQ 브로커 리레이 설정 registry.enableStompBrokerRelay("/exchange", "/queue", "/topic") .setRelayHost(host) .setRelayPort(61613) .setClientLogin(userName) .setSystemPasscode(password) .setSystemLogin(userName) .setSystemPasscode(password); } ... } 이렇게 구성했는데 rabbitMQ는 도커 컴포즈로 구성했습니다. 근데 다음과 같은 문제가 발생했는데 Chat.jsx:31 GET http://localhost:8080/ws/chat/285/4mxcvol4/jsonp?c=_jp.apvvzrr net::ERR_ABORTED 404 (Not Found) chat:1 Refused to execute script from ' http://localhost:8080/ws/chat/285/4mxcvol4/jsonp?c=_jp.apvvzrr ' because its MIME type ('') is not executable, and strict MIME type checking is enabled. 이렇게 계속해서 연결이 끊깁니다 어떻게 해야하나요?

  • rabbitmq
  • react
  • stomp
  • websocket
  • springboot
  • restapi
  • jwt
  • socketjs
유요한 댓글 1 좋아요 0 조회수 77

블로그 페이지 게시물 페이지 오류

미해결

워드프레스(WordPress) 완전정복

선생님 강의 잘 듣고 있습니다. 수업 중 난관에 부딪혀서 질문 남깁니다. 문제 1 현재 content.php 에서 커스텀 쿼리를 생성 후 posts_per_page => 6 의 값을 넣고 난 후 /blog/page/6/ 에서부터 404 오류 페이지로 이동 됩니다. (1, 2, 3, 4, 5 페이지까지는 페이지가 나오는데 6, 7 을 404 페이지를 보여줍니다.) 구글링 해본 결과 : 1. 워드프레스 탭에서 설정 고유주소 변경 : 실패 2. 설정 -> 읽기 페이지당 보여줄 글의 수 를 posts_per_page과 동일하게 6으로 맞춤 -> 모든 페이지(blog/page) 완벽하게 작동됨, 하지만 프론트 페이지에 front-latest posts도 6으로 나옴: 실패 <?php // $paged = get_query_var('paged') ? get_query_var('paged') : 1; $commonQuery = new WP_Query(array( 'post_type' => 'post', 'posts_per_page' => 3, 'category__not_in' => array(32), 'paged' => get_query_var('paged', 1) )); 문제 2 : 블로그 페이지 topBanner는 타이틀 및 서브 타이틀이 text-align이 수정되지 않음(다른 페이지는 작동) 그리고 블로그 페이지의 title이 블로그 게시물의 text-align에 따라 같이 움직임 (최근 블로그 게시물의 텍스트 얼라인을 왼쪽으로 작성하면 블로그 페이지의 타이틀도 왼쪽으로 이동됨)

  • wordpress
박영준 댓글 2 좋아요 0 조회수 208

5-1 학습링크

미해결

실무 중심! FE 입문자를 위한 React

pdf에서 5-1링크 클릭햇는데 codeSandBox 페이지가 없다고 뜹니다. 새로운 링크 없나요??ㅠㅠ

  • react
  • redux
  • node.js
  • sass
  • swr
댓글 1 좋아요 1 조회수 284

인기 태그

인프런 TOP Writers

주간 인기글