Nie mogę pobrać pliku przez ajax w wiosennym mvc bez pliku zapisu na serwerze [duplikat]

To pytanie ma już tutaj odpowiedź:

pobierz plik z ajax () POST Request via Spring MVC 5 odpowiedzi

Na jednej stronie znajduje się link do pobrania takiego pliku\myapp\controller\file?id=45

W kontrolerze

        InputStream stream = null;          
        byte [] buffer =someService.getFile(somedata); 
        stream = new ByteArrayInputStream(buffer);
        System.out.println("get file---");
         response.addHeader("Content-Disposition","attachment; filename=report.pdf");

        try {
            IOUtils.copy(stream, response.getOutputStream());
                System.out.println("get file---OK");
        } catch (Exception e) {
            e.printStackTrace();
        }

To działa dobrze, ale na innej stronie

         $.ajax({
                type: 'POST',
                url: '${url}',                  
                data: {sdate: $('#date').val() },
                success: function (data) {
                    alert(data)                     
                },
                error:function (xhr, ajaxOptions, thrownError) {
                    console.log("in error");
                } 
            });

W konsoli kiedykolwiek powiedziałem

dostać plik---

pobierz plik --- OK

ale przeglądarka nic nie robi.

Dodaję sukcesalert(data) do debugowania pokazuje zawartość binarną pliku PDF, taką jak:

% PDF-1,4% 3 0 obj <> strumień x ͝O $ q ) ޑ: U] E d A 1 ^ h ǃ \ t # ? X + RI J Y r F ?

Jak rozumieć program Explorer jest plikiem do pobrania?

Ze względu na brak zezwoleń nie mogę zapisać strony serwera plików

questionAnswers(1)

yourAnswerToTheQuestion