inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

멱등키에 request를 넘기는 것

미해결

견고한 결제 시스템 구축

uuid만을 사용해도 충분히 유니크할 것 같은데 request 자체를 넘겨서 어떻게 사용하는 건가요?

  • spring
  • spring-boot
  • dbms/rdbms
  • backend
  • payments
정성훈 댓글 1 좋아요 0 조회수 341

그룹 함수 데이터 모델

미해결

실습으로 손에 잡히는 SQLD(2과목)

sales 라는 테이블이 어디 있는지 모르겠어요.. 깃허브에도 찾아봤는데 안보여요 ㅠㅠㅠ

  • sql
  • oracle
  • mssql
  • SQLD
미랠 댓글 2 좋아요 0 조회수 181

백로그에 대한 질문이 있습니다.

미해결

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예 /아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 /아니오) [질문 내용] 서버에서는 서버 소켓으로 PORT 번호 지정해서 열어놓고 클라이언트가 TCP 연결을 완료하면 서버에서 백로그큐에 연결 정보를 저장하고, 서버에서 accept()를 하면 큐에서 꺼내 소켓을 생성한다고 설명하셨습니다. 근데 GPT나 다른 사람의 내용을 종합하면 클라이언트의 TCP 연결이 요청되면 해당 연결 정보를 syn 큐에 저장하고 연결이 완료되면 os에서 백로그에 저장한 뒤, 서버에서는 accept()를 하면 단순히 백로그에 대한 정보를 꺼내서 소켓을 만든다고 합니다. 내용을 정리하던 중 헷갈려서 어떤 것이 정확히 맞을지 궁금해서 질문드립니다!

  • java
  • 네트워크
  • 객체지향
기현 댓글 1 좋아요 1 조회수 227

섹션2 벽 부분 질문입니다.

해결됨

친절한 블렌더 - [LV.2] 모델링 연습

17:45초에 울타리 크기를 키우고 있는데 s누르고x로 사이즈 키우니 이렇게 되네요.. ㅠ- 안쪽은 정상처럼 보여요.

  • blender
  • 3d
  • 3d-rendering
  • 3d-modeling
bbok777 댓글 2 좋아요 1 조회수 159

준영속 상태 질문

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 준영속 상태란 persist context 안에서 한번이라도 관리된 적이 있는 entity의 상태를 의미한다고 알고 있습니다. 하지만 찾아본 바에 의하면 jpa가 '한번이라도 관리된 적이 있는지' 여부를 추적하는 메커니즘을 가지고 있는 것 같지는 않고, 단순히 식별자 여부로 판단하는 것 같은데 그렇다면 Member memberA = em.find(Member.class, 1L); Member memberB = new Member("B", memberA.getId()); memberB 도 준영속 상태라고 보는 것이 맞나요? memberB 가 준영속 상태가 아니라면 사실상 준영속 상태를 만드는 방법은 detach() 를 호출하는 방법밖에 없는 건가요? 감사합니다.

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
댓글 1 좋아요 0 조회수 100

ISR 테스트 중 궁금점

해결됨

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

// src/components/TanstackQueryOption.ts import { isServer, QueryClient, defaultShouldDehydrateQuery, } from '@tanstack/react-query' function makeQueryClient() { return new QueryClient({ defaultOptions: { queries: { staleTime: 15 * 1000, }, dehydrate: { shouldDehydrateQuery: (query) => defaultShouldDehydrateQuery(query) || query.state.status === 'pending', }, }, }) } let browserQueryClient: QueryClient | undefined = undefined export function getQueryClient() { if (isServer) { return makeQueryClient() } else { if (!browserQueryClient) browserQueryClient = makeQueryClient() return browserQueryClient } } // src/components/TanstackQueryProvider.tsx 'use client' import { getQueryClient } from '@/component/TanstackQueryOption'; import { QueryClientProvider, } from '@tanstack/react-query' import { ReactQueryDevtools } from '@tanstack/react-query-devtools'; import { ReactNode } from 'react' export default function TanstackQueryProvider({ children }: { children: ReactNode }) { const queryClient = getQueryClient() return ( <QueryClientProvider client={queryClient}> {children} <ReactQueryDevtools initialIsOpen={process.env.NEXT_PUBLIC_MODE === 'local'} /> </QueryClientProvider> ) } // src/app/layout.tsx import Banner from "@/component/Banner"; import Footer from "@/component/Footer"; import Header from "@/component/Header"; import TanstackQueryProvider from "@/component/TanstackQueryProvider"; import type { Metadata } from "next"; import { Inter } from "next/font/google"; import "@/app/global.css"; const inter = Inter({ subsets: ["latin"] }); export const metadata: Metadata = { title: "Create Next App", description: "Generated by create next app", }; export default function RootLayout({ children, }: Readonly<{ children: React.ReactNode; }>) { return ( <html lang="en"> <body> <TanstackQueryProvider> <div className='container'> <Banner/> <Header/> <main>{children}</main> <Footer/> </div> </TanstackQueryProvider> </body> </html> ); } // src/app/page.tsx import ProductList from "@/component/ProductList"; import { getQueryClient } from "@/component/TanstackQueryOption"; import { getProducts } from "@/fetch/getProducts"; import { dehydrate, HydrationBoundary, QueryClient } from "@tanstack/react-query"; import Image from "next/image"; export default function Page () { const newQueryClient = getQueryClient(); newQueryClient.prefetchQuery({ queryKey:['products'], queryFn: getProducts, }) return ( <> <section className='visual-sec'> <Image src="/visual.png" alt="visual" width={1920} height={300}/> </section> <section className="product-sec"> <h2>상품 리스트</h2> <HydrationBoundary state={dehydrate(newQueryClient)}> <ProductList /> </HydrationBoundary> </section> </> ) }; 'use client' // src/components/ProductList.tsx import Product from "@/component/Product"; import { getProducts } from "@/fetch/getProducts"; import { useQuery, useSuspenseQuery } from "@tanstack/react-query"; import styles from "@/component/ProductList.module.css"; export const ProductList = () => { const {data, isLoading, isFetching} = useSuspenseQuery({queryKey: ['products'], queryFn: getProducts}); console.log(`isLoading: ${isLoading}, isFetching: ${isFetching}`) return ( <div className={styles.productList}> {data?.map((product: any) => ( <Product key={product.item_no} product={product} /> ))} </div> ) }; export default ProductList; // src/components/Product.tsx import Link from "next/link"; import Image from "next/image"; export const Product = ({product} : any) => { return ( <Link href={`/product/${product.item_no}`} prefetch> <Image src={product.detail_image_url} alt={product.item_name} width={500} height={300} /> <h3>{product.item_name}</h3> <span>{product.price}</span> </Link> ) } export default Product; // src/app/product/[id]/page.tsx export default function ProductDetailPage() { return ( <> 상품 상세페에지 </> ) } // src/fetch/getProducts.ts export const getProducts = async () => { const res = await fetch(`http://localhost:9090/api/products`, { method: "GET", headers: { "Content-Type": "application/json", }, next: { revalidate: 10, } }); const currentTime = new Date().toLocaleTimeString(); const data = await res.json(); if (typeof window === "undefined") { console.log('fetch products', 'server', currentTime); console.table(data); } else { console.log('fetch products', 'client', currentTime); console.table(data); } if(!res.ok) { throw new Error("Failed to fetch products"); } return data; } // src/server/server.js import express from "express"; import cors from "cors"; const app = express(); const port = 9090; app.use(cors()); app.use(express.json()); app.get("/api/products", (req, res) => { const currentTime = new Date().toLocaleTimeString(); console.log(`Received request at ${currentTime}`); const products = [ { item_no: 122997, item_name: '상품 1', detail_image_url: 'https://picsum.photos/id/237/500/500', price: 75000, }, { item_no: 768848, item_name: '상품 2', detail_image_url: 'https://picsum.photos/id/238/500/500', price: 42000, }, { item_no: 552913, item_name: '상품 3', detail_image_url: 'https://picsum.photos/id/239/500/500', price: 240000, }, // { // item_no: 1045738, // item_name: '상품 4', // detail_image_url: // 'https://picsum.photos/id/240/500/500', // price: 65000, // }, ]; res.json(products); }); app.listen(port, () => console.log('Server is running')); 안녕하세요, fetch와 tanstackQuery를 사용해서 ISR 동작을 테스트하고있었습니다. 테스트 마다 .next 파일은 지우고 새로 build 하여 run start를 통하여 확인하였습니다. staleTime과 revalidate 의 시간이 서로 상이한데, 동일하게 설정했을때, 시간의 간격을 두었을때의 차이점을 직접 확인하려고 하였는데 어떤점에서 차이가 나는지 보고도 이해가 안가서 질문드립니다. 궁금점 1. staleTime과 revalidate 는 gcTime 처럼 staleTime이 revalidate보다 적은 시간으로 설정을 해야하는지? 그렇다면 그 이유는 gcTime보다 작게 설정하는 이유와 같은지? 가 궁금합니다. 2. server.js에 주석처리해놓은 item을 다시 주석을 해지하면 처음 revaildate의 10초 설정으로 인해 새로고침을해도 아이템은 계속 페이지에서 3개만 노출되고있고, 상품을 클릭해서 이동을 하면서 staleTime의 설정인 15초가 되었을때는 client 요청이 발생하여 아이템이 4개로 잘 노출되고있습니다. 하지만 이 때 새로고침을 하게되면 처음 fetch revalidate로 cache되어있던 데이터인 아이템 3개까지만 노출이 되고 새로고침을 한번 더 진행해야 그때서야 4개로 노출이되는데 클라이언트와 서버 쪽이 서로 싱크가 안맞는거같은데 이러한 문제점이 왜 일어나는지 이해가 잘안됩니다! 3. 확장된 fetch와 tanstackQuery를 어떻게 분리해서 사용해야할까도 많이 고민이 되는데.. queryFn 에 이미 fetch로 만들어둔 함수를 가져와 사용하니 분리라는 개념을 생각하면 안되는걸까요? fetch를 독립적으로 사용하는 경우도있다고하는데 이 경우는 왜 독립적으로 사용하는지 잘모르겠습니다.

  • react
  • next.js
  • react-query
  • next-auth
  • msw
밍끼 댓글 1 좋아요 0 조회수 274

작업형1 모의문제 1-2 gold값 가진 데이터 수

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

gold값을 가진 데이터 수를 구할 때 아래의 코드처럼 조건문 대신 .str과 .sum을 사용해도 괜찮은 건가요? print(df['f3'].str.contains('gold').sum())

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
gniddup5 댓글 2 좋아요 0 조회수 116

마지막 주소록 예제 c 파일 한글 깨짐 현상

해결됨

C개발자를 위한 최소한의 C++

안녕하세요, 강사님! 양질의 강의 제공해 주셔서 감사합니다. 완강까지 마지막 주소록 예제만을 남겨두고 있는데, 다른 cpp 예제들에서는 보이지 않던 한글 깨짐 현상이 발생해 진행에 어려움을 겪고 있습니다. 혹시 해결 방법이 있을까요?

  • c++
  • microsoft-windows
sh 댓글 1 좋아요 0 조회수 257

서버 배포 관련해서 질문드립니다.

미해결

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버

지금 올라와 있는 서버 강의를 듣던 중에 배포 관련해서 궁금하여 질문 남깁니다. c++게임서버를 aws에 배포하는 과정 내용의 강의를 올리실 생각이 있으신가요? 배포하는 과정이 궁금합니다.

  • 네트워크
  • MMORPG
  • windows-server
Bo Hyun 댓글 1 좋아요 0 조회수 159

(해결) 각 테스트가 상태를 공유하지 않습니다.

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] "회원 리포지토리 테스트 케이스 작성" 강의에서 MemoryMemberRepositoryTest 를 작성하시며 @AfterEach 를 통해 각 테스트 케이스가 끝날 때 마다 repository 필드의 상태를 초기화해야 한다고 말씀하셨습니다. 그런데 저는 별 다른 오류가 나타나진 않아서 다음과 같이 작성해봤습니다. @AfterEach void afterEach() { System.out.println(repository.hashCode()); } 그랬더니 각 repository 의 해쉬가 서로 다르더라구요. MemoryMemberRepository 구현 내부에서 상태를 출력하게 해보면, 매 테스트 케이스마다 새로운 상태가 되는 것으로 보입니다. 제가 잘못 작성한 부분이 있는 걸까요? 아니면 스프링, 라이브러리 버전의 문제인가요? 전체 코드는 다음과 같습니다. 읽어주셔서 감사합니다. // MemoryMemberRepository.java package hello.hello_spring.repository; import hello.hello_spring.domain.Member; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Optional; public final class MemoryMemberRepository implements MemberRepository { private final Map<Long, Member> store = new HashMap<>(); private long sequence = 0; @Override public Member save(Member member) { member.setId(++sequence); store.put(member.getId(), member); return member; } @Override public Optional<Member> findById(Long id) { return Optional.ofNullable(store.get(id)); } @Override public Optional<Member> findByName(String name) { return store.values() .stream() .filter(member -> member.getName().equals(name)) .findAny(); } @Override public List<Member> findAll() { return store.values() .stream() .toList(); } public void clearStore() { store.clear(); } } // MemoryMemberRepositoryTest.java package hello.hello_spring.repository; import hello.hello_spring.domain.Member; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.*; class MemoryMemberRepositoryTest { MemoryMemberRepository repository = new MemoryMemberRepository(); @AfterEach void afterEach() { System.out.println(repository.hashCode()); } @Test void save() { var member = new Member(); member.setName("spring1"); repository.save(member); var result = repository.findById(member.getId()).get(); assertThat(member).isEqualTo(result); } @Test void findByName() { Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member2.setName("spring2"); repository.save(member2); var result = repository.findByName("spring1").get(); assertThat(result).isEqualTo(member1); } @Test void findAll() { Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member2.setName("spring2"); repository.save(member2); var result = repository.findAll(); assertThat(result).hasSize(2); } }

  • java
  • spring
  • mvc
  • spring-boot
귀여운 고양이 댓글 1 좋아요 0 조회수 269

디스코드 서버는 어떻게...^^;;

해결됨

Godot Engine 으로 시작하는 첫 게임 개발

디스코드 서버는 어떻게 접속하면 되나요??? 디스코드를 한번도 사용해보지 않았어요... 안내를 찾아보고 하려고 했는데 안내도 못찾겠어요,.. -자동차가 보이지 않는 문제 때문에 프로젝트 파일을 서버에 올려보라는 제안을 받은 후-

  • godot-engine
  • gdscript
kninfo8063 댓글 3 좋아요 1 조회수 673

혹시 강의에서 오토스케일링은 배울수있을까요?

미해결

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

모든강의를 구매할 예정입니다. 스프링 강의를 제외하고 구매하고싶습니다만 현재 까지 강의를 들었을때 제가 스프링 서버를 두개를 뛰운다음에 유레카로 로드밸런싱하는것 같은데 필요에따라서(서비스요청이 많아지면)자동적이게 설정한대로 확장하게 만들수 있나요? 이건 젠키스 강의로봐야하나요? - 오토스케일링 여부 또한 하나의 ec2 에 모든 로직을 넣어서 확장하는게 아니라 여려 ec2 에서 스케일링 하는 강의가있나요? 스프링 배포까지 공부해야할까요? -ec2 분산 여부

  • spring-boot
  • jpa
  • 아키텍처
  • spring-cloud
  • kafka
  • msa
  • rabbitmq
djsdjdyd123 댓글 2 좋아요 0 조회수 289

안녕하세요 강사님 정렬에 대해서 설명이 조금 더 듣고 싶습니다.

미해결

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

#include <queue> #include <iostream> #include <vector> #include <set> using namespace std; int N; vector<vector<int>> n; vector<int> ch; int main() { ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); FILE* fp; freopen_s(&fp, "input.txt", "rt", stdin); cin >> N; ch.resize(N, 0); for (int i = 1; i <= N; i++) { int a, h, w; cin >> a >> h >> w; n.push_back({ a, h, w }); } //sort(n.begin(), n.end(), [](const vector<int>& a, const vector<int>& b) { // return a[0] > b[0]; }); int max = 0; ch[0] = n[0][1]; for (int i = 1; i < N; i++) { int a1 = n[i][0]; int h1 = n[i][1]; int w1 = n[i][2]; int res = h1; for (int j = 0; j < i; j++) { int a2 = n[j][0]; int h2 = ch[j]; int w2 = n[j][2]; if (a1 < a2 && w1 < w2) { if (h1 + h2 > res) { res = h1 + h2; } } } ch[i] = res; if (res > max) { max = res; } } cout << max; } 강사님께서도 정렬을 먼저 하고서 알고리즘의 진행을 설명해 주셨는데, 저런식으로 조건을 넣어 줄 경우 정렬을 하지 않아도 상관이 없을 것 같았는데 답이 다르게 나오더군요. 무슨 차이인가요?

  • c++
  • 코딩-테스트
kjwon4105 댓글 1 좋아요 0 조회수 157

🔥IT 직군 취업과 커리어 성장을 위한 사이드 프로젝트 참여자 모집🔥[스위프 7기]

미해결

나만의 독보적인 포트폴리오를 만들고 싶다면? 단기간에 프로젝트 A to Z를 경험하고 싶다면? 타 직군과 소통하며 협업을 경험하고 싶다면? 위와 같은 고민을 하고 있다면 지금 당장 ‘스위프 7기’에 지원하세요! 완벽하게 취.뽀. 하고 싶은 대학생&취준생&주니어 모두 환영! (비전공자도 환영 🙌 ) 📢 [스위프란?] 스위프는 PM, 디자이너, 개발자가 한 팀으로 웹개발 단기 프로젝트(6주)를 진행하며 아이디에이션부터 출시까지 경험하고 성장할 수 있는 프로그램입니다. 스위프를 통해 나와 맞는 팀원과 함께 프로젝트의 전 과정을 경험하고, 나만의 차별화 된 포트폴리오를 만들 수 있어요! ⭐ [참가 혜택] 체계적으로 협업할 수 있도록 스위프 전용 협업 툴 지원! 초보자도 쉽게 프로젝트를 진행할 수 있는 가이드라인 및 템플릿 제공! GitHub 연동만으로 쉽고 빠른 웹 호스팅 지원! 포트폴리오로 활용할 수 있도록 프로젝트 결과물 보존! 현직자가 답변해주는 상시 QnA 창구 운영! 기업 채용 연계 서비스 제공! 팀 회의를 위한 오프라인 공간 제공! → 자세히 알아보기 https://dub.sh/swyp/benefit 🙌🏻 [모집 대상] - 서비스 기획에 관심 있는 PMㆍ기획자, 디자인 툴 하나라도 사용해 본 디자이너, 프로그래밍 언어를 하나라도 공부해 본 개발자, 모두 환영해요! - 한 번도 사이드 프로젝트 해본 적 ‘없’는 사람? 오히려 좋아요! - 경험이 부족해도 포트폴리오가 없어도 괜찮아요. 당신의 의지와 열정이면 충분해요! 🔥 [참가비] - “단돈 99,000원!” 참가비 249,000원 수료 시 현금 리워드(15만원) 지급 📅 [일정] - 지원 마감 : 10/27(일) - 합격자 안내 : 10/28(월) 20:00 - 팀 빌딩 : 10/29(화)~10/31(목) - 킥오프 미팅 : 11/2(토) 10:00 - 프로젝트 발표 및 네트워킹 행사 : 12월 28일(토) ※ 세부 일정은 합격자에 한해 일괄 안내 예정 🥳 [선배들의 후기] 프로젝트 결과물 https://dub.sh/swyp/project 후기 모음 https://dub.sh/swyp/review 📌 [지원 방법] 신청서 작성 https://swyp.swyg.im/ 🙋 [문의] Contact : http://pf.kakao.com/_kiszn 👉 스위그(SWYG)에 대해 더 알고 싶다면? 홈페이지 https://www.swygbro.com 인스타그램 https://www.instagram.com/swyg_official

  • 개발자
  • 기획자
  • pm
  • 포트폴리오
  • 사이드프로젝트
  • 프로젝트
  • 취업
  • 취준
  • 스펙
뀨태림 댓글 1 좋아요 0 조회수 143

6 - G 반례 (-1 출력)

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

제가 생각한 반례가 맞는지 여쭤보고 싶어 질문 드립니다! 틀린 코드: http://boj.kr/14b153f8d05946abab1e61585a86d685 맞는 코드: http://boj.kr/ec182d95af3a4eee981ba3b00db1688a 두 코드의 차이는 -1 출력 조건인 거 같습니다! 하단은 틀린 코드에서 -1 출력 부분 조건입니다. if (x == y) { return 0; } 위 처럼 되면 추가 게임 횟수를 최대 범위인 10억까지 채웠지만 z의 값이 변하지 못 할 수도 있기 때문에, 이런 경우 때문에 틀린 거 같습니다! 혹시 제가 생각한 반례가 맞을까요..! 그 외에는 x==y인 경우로 걸러낼 수 있다고 생각합니다! 아래는 정답 코드 부분입니다! int main() { cin >> x >> y; z = (((ll)y * 100 / x)); origin = z; ll lo = 1, hi = 1000000004; while (lo <= hi) { ll mid = (lo + hi) / 2; z = (((ll)((y + mid) * 100) / (x + mid))); if (z != origin) { ret = min(ret, mid); hi = mid - 1; } else { lo = mid + 1; } } if (ret == LLONG_MAX) { cout << -1 << '\n'; } else { cout << ret << '\n'; } }

  • c++
  • 코딩-테스트
자르트 댓글 3 좋아요 0 조회수 179

[해결 완료] 빌드 에뮬레이터는 열리지만 프로젝트가 열리지 않습니다.

해결됨

맛집 지도앱 만들기 (React Native & NestJS)

❗ 질문 작성시 꼭 참고해주세요 최대한 상세히 현재 문제(또는 에러)와 코드(또는 github) 를 첨부해주셔야 그만큼 자세히 답변드릴 수 있습니다. 맥/윈도우, 안드로이드/iOS, ReactNative, Node 버전 등의 개발환경 도 함께 적어주시면 도움이 됩니다. 에러메세지는 일부분이 아닌 전체 상황 을 올려주세요. ( 일부만 자르거나 일부만 복사해서 올려주시면 답변이 어렵습니다. ) m1 맥 ios Node : 20.10.0 ruby : 3.1.0 - 2.7.6 버전으로 다운받고 실행했을때 cocoapods가 현재는 2.7.6버전이 아닌 3.1.0버전 이상이 필요하다하여 사용했습니다. cd ios rm -rf Pods rm -rf Podfile.lock pod install 위 명령어를 사용해서 pod도 재설치 한 뒤 xcode로 실행해도 빌드가 되지 않습니다. xcode에서는 아래와같은 오류가 나옵니다. Command PhaseScriptExecution failed with a nonzero exit code vscode에서는 아래와 같이 나옵니다. info Opening the app on iOS... info Found Xcode workspace "MatzipApp_01.xcworkspace" info No booted devices or simulators found. Launching first available simulator... info Launching iPhone SE (3rd generation) (iOS 18.0) info Building (using "xcodebuild -workspace MatzipApp_01.xcworkspace -configuration Debug -scheme MatzipApp_01 -destination id=675A0CA6-486F-4EF1-A232-AAC4D04C438D") info 💡 Tip: Make sure that you have set up your development environment correctly, by running react-native doctor. To read more about doctor command visit: https://github.com/react-native-community/cli/blob/main/packages/cli-doctor/README.md#doctor Command line invocation: /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -workspace MatzipApp_01.xcworkspace -configuration Debug -scheme MatzipApp_01 -destination id=675A0CA6-486F-4EF1-A232-AAC4D04C438D User defaults from command line: IDEPackageSupportUseBuiltinSCM = YES Prepare packages ComputeTargetDependencyGraph note: Building targets in dependency order note: Target dependency graph (56 targets) Target 'MatzipApp_01' in project 'MatzipApp_01' ➜ Implicit dependency on target 'Pods-MatzipApp_01' in project 'Pods' via file 'libPods-MatzipApp_01.a' in build phase 'Link Binary' ➜ Implicit dependency on target 'CocoaAsyncSocket' in project 'Pods' via options '-lCocoaAsyncSocket' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'DoubleConversion' in project 'Pods' via options '-lDoubleConversion' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper' in project 'Pods' via options '-lFlipper' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-Boost-iOSX' in project 'Pods' via options '-lFlipper-Boost-iOSX' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-Fmt' in project 'Pods' via options '-lFlipper-Fmt' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-Folly' in project 'Pods' via options '-lFlipper-Folly' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Flipper-PeerTalk' in project 'Pods' via options '-lFlipper-PeerTalk' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'FlipperKit' in project 'Pods' via options '-lFlipperKit' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RCT-Folly' in project 'Pods' via options '-lRCT-Folly' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'RCTTypeSafety' in project 'Pods' via options '-lRCTTypeSafety' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-Codegen' in project 'Pods' via options '-lReact-Codegen' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-Core' in project 'Pods' via options '-lReact-Core' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-CoreModules' in project 'Pods' via options '-lReact-CoreModules' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-NativeModulesApple' in project 'Pods' via options '-lReact-NativeModulesApple' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTAnimation' in project 'Pods' via options '-lReact-RCTAnimation' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTAppDelegate' in project 'Pods' via options '-lReact-RCTAppDelegate' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTBlob' in project 'Pods' via options '-lReact-RCTBlob' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTImage' in project 'Pods' via options '-lReact-RCTImage' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTLinking' in project 'Pods' via options '-lReact-RCTLinking' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTNetwork' in project 'Pods' via options '-lReact-RCTNetwork' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTSettings' in project 'Pods' via options '-lReact-RCTSettings' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTText' in project 'Pods' via options '-lReact-RCTText' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-RCTVibration' in project 'Pods' via options '-lReact-RCTVibration' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-cxxreact' in project 'Pods' via options '-lReact-cxxreact' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-debug' in project 'Pods' via options '-lReact-debug' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-hermes' in project 'Pods' via options '-lReact-hermes' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-jsi' in project 'Pods' via options '-lReact-jsi' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-jsiexecutor' in project 'Pods' via options '-lReact-jsiexecutor' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-jsinspector' in project 'Pods' via options '-lReact-jsinspector' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-logger' in project 'Pods' via options '-lReact-logger' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-perflogger' in project 'Pods' via options '-lReact-perflogger' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-runtimescheduler' in project 'Pods' via options '-lReact-runtimescheduler' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'React-utils' in project 'Pods' via options '-lReact-utils' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'ReactCommon' in project 'Pods' via options '-lReactCommon' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'SocketRocket' in project 'Pods' via options '-lSocketRocket' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'Yoga' in project 'Pods' via options '-lYoga' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'YogaKit' in project 'Pods' via options '-lYogaKit' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'fmt' in project 'Pods' via options '-lfmt' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'glog' in project 'Pods' via options '-lglog' in build setting 'OTHER_LDFLAGS' ➜ Implicit dependency on target 'libevent' in project 'Pods' via options '-llibevent' in build setting 'OTHER_LDFLAGS' Target 'Pods-MatzipApp_01' in project 'Pods' ➜ Explicit dependency on target 'CocoaAsyncSocket' in project 'Pods' ➜ Explicit dependency on target 'DoubleConversion' in project 'Pods' ➜ Explicit dependency on target 'FBLazyVector' in project 'Pods' ➜ Explicit dependency on target 'FBReactNativeSpec' in project 'Pods' ➜ Explicit dependency on target 'Flipper' in project 'Pods' ➜ Explicit dependency on target 'Flipper-Boost-iOSX' in project 'Pods' ➜ Explicit dependency on target 'Flipper-DoubleConversion' in project 'Pods' ➜ Explicit dependency on target 'Flipper-Fmt' in project 'Pods' ➜ Explicit dependency on target 'Flipper-Folly' in project 'Pods' ➜ Explicit dependency on target 'Flipper-Glog' in project 'Pods' ➜ Explicit dependency on target 'Flipper-PeerTalk' in project 'Pods' ➜ Explicit dependency on target 'FlipperKit' in project 'Pods' ➜ Explicit dependency on target 'OpenSSL-Universal' in project 'Pods' ➜ Explicit dependency on target 'RCT-Folly' in project 'Pods' ➜ Explicit dependency on target 'RCTRequired' in project 'Pods' ➜ Explicit dependency on target 'RCTTypeSafety' in project 'Pods' ➜ Explicit dependency on target 'React' in project 'Pods' ➜ Explicit dependency on target 'React-Codegen' in project 'Pods' ➜ Explicit dependency on target 'React-Core' in project 'Pods' ➜ Explicit dependency on target 'React-CoreModules' in project 'Pods' ➜ Explicit dependency on target 'React-NativeModulesApple' in project 'Pods' ➜ Explicit dependency on target 'React-RCTActionSheet' in project 'Pods' ➜ Explicit dependency on target 'React-RCTAnimation' in project 'Pods' ➜ Explicit dependency on target 'React-RCTAppDelegate' in project 'Pods' ➜ Explicit dependency on target 'React-RCTBlob' in project 'Pods'

  • react-native
  • typescript
  • nestjs
  • react-query
  • zustand
채명수 댓글 2 좋아요 0 조회수 1067

쿠팡 썸네일 링크가 출력이 안되요

미해결

안녕하세요 코드 작성을 했는데 이미지링크가 출력이 안되네요. 상품명이랑 가격이랑은 다 출력이 되는데 이미지만 출력이 안되서 Class를 잘못가져온가 싶어서 문의드려봅니다. from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.chrome.service import Service from webdriver_manager.chrome import ChromeDriverManager import time # 웹드라이버 설정 service = Service(ChromeDriverManager().install()) driver = webdriver.Chrome(service=service) # URL 열기 url = "https://www.coupang.com/np/categories/329927" driver.get(url) # 페이지 로딩 대기 time.sleep(5) # 필요에 따라 대기 시간 조정 # 상품명 크롤링 product_names = driver.find_elements(By.CLASS_NAME, "name") # 상품 가격 크롤링 product_prices = driver.find_elements(By.CLASS_NAME, "price-value") # 도착 정보 크롤링 arrival_info = driver.find_elements(By.CLASS_NAME, "arrival-info.emphasis") # 이미지 링크 크롤링 (클래스 이름 변경) image_links = driver.find_elements(By.CLASS_NAME, "image") # 상품명, 가격, 도착 정보 및 이미지 링크 출력 for i in range(len(product_names)): product_name = product_names[i].text product_price = product_prices[i].text if i < len(product_prices) else "가격 정보 없음" arrival = arrival_info[i].text if i < len(arrival_info) else "도착 정보 없음" image_link = image_links[i].get_attribute("src") if i < len(image_links) else "이미지 링크 없음" print(f"상품명: {product_name}") print(f"가격: {product_price}") print(f"도착 정보: {arrival}") print(f"이미지 링크: {image_link}") print("-" * 40) # 드라이버 종료 driver.quit() 파이썬 결과값은 아래와 같이 뜨네요 쿠팡 HTML 입니다 왜 안되는걸까요... 제가 이미지링크 클래스를 잘 못가져온걸까요?

zykim 댓글 0 좋아요 0 조회수 89

인기 태그

인프런 TOP Writers

주간 인기글