как получить параметры dopost в виде файла?

У меня такая проблема,

Я хочу отправить аудиофайл с помощью java-скрипта сервлету и получить его теги Id3 (для этого я использовал Mp3agic), но я не могу получить файл как файл с помощью метода получения параметров Little Help Here.

я хочу что-то вроде

File f = (File) request.getParameter("file");

но это кажется невозможным

это мой код

protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
    try {
       // File f = (File) request.getParameter("file");
        Mp3File mp3file = new Mp3File(f);
        ID3v2 id3 = mp3file.getId3v2Tag();
        JSONObject obj = new JSONObject();
        obj.put("Title", id3.getTitle());
        obj.put("Artist", id3.getArtist());
        obj.put("Year", id3.getYear());
        obj.put("Genre", id3.getGenreDescription());
        obj.put("Lyrics", id3.getLyrics());
        obj.put("Composer", id3.getComposer());
        obj.put("Bpm", id3.getBPM());
        obj.put("Comments", id3.getComment());
        response.setContentType("text/plain");
        response.getWriter().write(obj.toString());
    } catch (Exception ex) {
        ex.printStackTrace();
    }
}

Сценарий Java

function getID3tTagData(File) {

    var req = new XMLHttpRequest();
    req.onreadystatechange = function () {

        if (this.readyState === 4 && this.status === 200) {

            alert("INNN");
            var json = JSON.parse(this.responseText);
            document.getElementById("title").value = json.Title;
            document.getElementById("genre").value = json.Genre;
            
        }
    };
    req.open("POST", "GetMusicDatenter?file=" + File, "true");
    req.send();
}

0 ответов

Другие вопросы по тегам