파일 업로드 질문
445
작성자 없음
작성한 질문수 0
안녕하십니까
혹시 graphql을 이용한 이미지 업로드 부분에서
포스트맨 말고 클라이언트에서 요청하려고 할 때
다른 설정들이 필요한가요?
여러 방법들을 해봤는데 모두 안되서 질문 드립니다.
await axios.post("http://localhost:5656/graphql", {
query: `
mutation {
uploadFile(file: ${file})
}
`,
})const file = files[0]
await axios.post("http://localhost:5656/graphql", {
query: `
mutation uploadFile($file: Upload!) {
uploadFile(file: $file)
},
`,
variables: {
file: file,
},
})
답변 2
0
안녕하세요! rjs2517님!
포스트맨에서 파일업로드 당시, 단순히 파일만 업로드한 것이 아니라 header에 추가했던 내용들도 있었어요!
이러한 부분까지 입력되어야 올바르게 전송될 수 있답니다!^^
0
안녕하세요 rjs2517님, 인프런 AI 인턴이에요.
graphql을 이용한 이미지 업로드 시 클라이언트에서 요청할 때 추가적인 설정이 필요합니다. 파일을 업로드하기 위해서는 multipart/form-data 형식으로 요청을 보내야 합니다. axios를 사용하는 경우 FormData 객체를 생성하여 파일을 첨부해야 합니다. 아래는 예시 코드입니다:
import axios from 'axios';
const formData = new FormData();
formData.append('file', file);
await axios.post("http://localhost:5656/graphql", formData, {
headers: {
'Content-Type': 'multipart/form-data',
},
params: {
query: `
mutation {
uploadFile(file: $file)
}
`,
variables: {
file: null, // 이 부분은 graphql 스키마에 맞게 설정하여야 합니다.
},
},
});
파일을 FormData에 첨부한 후, 해당 FormData를 요청의 데이터로 넘기고, ‘Content-Type’ 헤더를 ‘multipart/form-data’로 설정해야 합니다. 또한, query 변수에 파일 변수를 설정하여 업로드할 파일을 graphql 스키마에 맞게 전달해야 합니다.
이렇게 설정을 하면 클라이언트에서 graphql과 함께 이미지 업로드를 할 수 있습니다. 추가로 사용하고 계신 라이브러리나 환경에 따라 설정이 다를 수 있으니 참고하여 사용해보시기 바랍니다. 질문이 있으시면 언제든지 물어보세요. 감사합니다!
그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?
0
82
2
강의 전체 소스 코드를 받고싶습니다.
0
75
2
fontawesome 사용 문의
0
76
2
소스 코드 부탁드립니다~
0
85
2
깃 레포지터리 소스
0
80
2
커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요
0
72
2
10-01 Entity TypeOrmModule.forRoot 에 entities
0
84
3
강의 버전관련 문의입니다
0
102
2
Ubuntu 설치 관련
0
60
1
schema.gql 질문 드립니다.
0
50
1
서버 재실행시 Many to Many
0
100
3
input 관련 문의
0
89
2
Rest API 보다는 graphql이 주된 내용인데
0
130
2
강의 전체 소스코드 받을수있을까요?
0
154
1
도커볼륨 마운트 관련
0
126
2
findOne 타입스크립트오류
0
108
1
http => htrtps 호출 인증서 신뢰 오류
0
349
1
self-signed certificate in certificate chain 에러 발생
0
411
1
mongoose 설치 오류
0
141
1
특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)
0
280
2
08-06
0
177
3
구조랑 패턴 관련해서 질문
0
124
2
mydocker
0
128
2
coolsms statuscode 2000 인데 전송안돼는 경우 확인.
0
156
1





