HTML/자바 스크립트로 작성된 JSP 프론트 엔드에서 노래 (.mp3) 파일을 업로드하려고합니다. 웹 소켓을 사용하여 Java 백엔드에 업로드해야합니다. 누구든지이 일을 어떻게 진행할 수 있을지에 대한 제안이 있습니까? HTML/자바 스크립트로 .mp3 파일을 업로드하고 자바 백엔드로 보내는 방법
현재 우리는 우리의 JSP 파일에 이런 일을하고 있습니다 :<h1>Please Choose a Song file</h1>
<form name = "JSONUploadForm">
<input type = "file" name="file" accept = ".mp3"/> <br/>
<input type = "button" value = "Click to upload!" name = "button" onClick = "submitSong();"/>
</form>
그런 다음 우리는 우리의 자바 스크립트 함수의 submitSong() 또한
function submitSong(){
var songStuffs = document.getElementById("file");
console.log(songStuffs); --> we get "null" here
sendMessage(songStuffs);
alert("song sent");
}
function sendMessage(val, string) {
socket.send(string);
return false;
}
이곳 서버 기능에 대한 우리의 연결이다. 그러나이 기능은 올바르게 작동합니다. 어떤 제안을 크게 감상 할 수
@OnMessage
public void onMessage(String message, Session session) throws IOException, EncodeException {
FileWriter fw = new FileWriter(new File(songName + ".mp3"));
fw.write(song);
BufferedReader fr = new BufferedReader(new FileReader(songName + ".mp3"));
String data = fr.readLine();
System.out.println("Song: " + data); --> Here we get "song: null"
}
:
function connectToServer() {
socket = new
WebSocket("ws://localhost:8080/Project/socket");
socket.onopen = function(event) {
console.log("connected!");
}
당신은 또한 우리의 서버 측 (된 .java 파일)을 볼 수 있습니다!
이 줄에는 '이 없습니다. id 속성을 추가하고 확인하십시오. –
모두 감사합니다! 이제 파일 경로가 서버로 전송됩니다. 그러나 단순히 파일을 모두 함께 보내거나 (경로가 아닌)/파일 내의 데이터에 액세스하는 방법은 무엇입니까? 업로드 된 노래를 서버에 저장하고 싶습니다. –
파일을 업로드하려면 서버에 양식 객체를 보내야합니다. –