RangeNotSatisfiableError: Range Not Satisfiable 라고 에러가뜹...
-
게시물 수정 , 삭제는 로그인 필요
클라이언트는 const uploadVideo = async () => { setPreviewVideo(null); const previewFileName = previewVideo.split('/').pop(); // 파일 이름만 추출 console.log(previewFileName); const formData = new FormData(); formData.append('video', { uri: previewVideo, name:previewVideo, // 파일 이름 type: 'video/mp4', // 비디오 타입 (비디오에 맞게 수정 가능) }); try { const response = await axios.post('http://192.168.219.103:4000/videoUpload', formData, { headers: { 'Content-Type': 'multipart/form-data', }, }); console.log('response data', response.data); // setVideoURL(previewFileName); } catch (error) { if (preview) { return; } else { Alert.alert('비디오를 업로드하는데 실패했습니다.'); } } }; const renderItem = ({ item }) => { const imageURL = item.body.split('ThisIsImageText')[1]+'.jpg' return( !item.body.split(':')[1].includes('ThisIsImageText') ? !item.body.split(':')[1].includes('ThisIsVideoText') ? <View style={[styles.messageContainer,{ alignSelf:item.body.split(':')[0] !== userId ?'flex-start':'flex-end', backgroundColor:item.body.split(':')[0] !== userId ? 'rgba(184, 249, 234, 1)':'rgba(226, 251, 101, 1)', }]}> <Text style={styles.messageText}>{item.body}</Text> </View> : <View> <Text style={{position:'absolute', alignSelf:item.body.split(':')[0] !== userId ?'flex-start':'flex-end', backgroundColor:item.body.split(':')[0] !== userId ? 'rgba(184, 249, 234, 1)':'rgba(226, 251, 101, 1)',zIndex:1}}>{item.body.split(':')[0]}:영상</Text> <Video useNativeControls={true} // 기본 비디오 컨트롤 사용 resizeMode="cover" // 변경된 부분 source={{uri:`http://192.168.219.103:4000/Videos/${item.body.split('ThisIsVideoText')[1]}`}} style={[styles.stVideo,{ alignSelf:item.body.split(':')[0] !== userId ?'flex-start':'flex-end', backgroundColor:item.body.split(':')[0] !== userId ? 'rgba(184, 249, 234, 1)':'rgba(226, 251, 101, 1)', }]} /> </View> : <View> <Text style={{position:'absolute', alignSelf:item.body.split(':')[0] !== userId ?'flex-start':'flex-end', backgroundColor:item.body.split(':')[0] !== userId ? 'rgba(184, 249, 234, 1)':'rgba(226, 251, 101, 1)',zIndex:1}}>{item.body.split(':')[0]}:사진</Text> <TouchableOpacity onPress={()=>{ handleImageDownload(imageURL); }} style={{position:'relative', top:25, padding:2, borderRadius:10, alignSelf:item.body.split(':')[0] !== userId ?'flex-start':'flex-end', backgroundColor:item.body.split(':')[0] !== userId ? 'white':'white',zIndex:1}}> <Text>다운로드</Text> </TouchableOpacity> <TouchableOpacity onPress={()=>{ setBigImage(item.body.split('ThisIsImageText')[1]); console.log(item.body.split('ThisIsImageText')[1]); }} > <Image style={[styles.ImageAndVideo,{ alignSelf:item.body.split(':')[0] !== userId ?'flex-start':'flex-end', backgroundColor:item.body.split(':')[0] !== userId ? 'rgba(184, 249, 234, 1)':'rgba(226, 251, 101, 1)', }]} source={{ uri: `http://192.168.219.103:4000/Images/${item.body.split('ThisIsImageText')[1]}.jpg` }} /> </TouchableOpacity> </View> ) }; 서버는 const storage2 = multer.diskStorage({ destination: 'public/Videos/', filename: function (req, file, cb) { cb(null, file.originalname); // 파일 이름으로 원본 파일 이름 사용 }, }); const upload2 = multer({ storage: storage2 }); app.post('/videoUpload', upload2.single('video'), (req, res) => { console.log(req.file); VideoList[req.file.originalname]++; const newImagePath = `public/Videos/${req.file.originalname}`; fs.renameSync(req.file.path, newImagePath); res.send(VideoList); console.log('videoList::::',VideoList); })
#rangenotsatisfiableerror range not satisfiable