2010-08-11 6 views
0

나는 서버를 실행 중이고 웹 클라이언트가 파일을 다운로드 할 수 있습니다."다른 이름으로 저장"대화 상자 파일 이름

내가 액세스 할 때

서버 /.../을 MyFile/

다운로드 "을 MyFile"라는 이름의 파일과 팝업을 "다른 이름으로 저장 열기가,"이 표시됩니다. 다른 이름으로 저장을 클릭하면 제안 된 이름은 "MyFile"입니다.

어떻게 다른 이름으로 변경합니까?

p.s. MyFile to/SomeOtherFile은 서버가 수행 한 작업에 따라 매번 다른 파일을 포함하므로 변경할 수 없습니다. 따라서 제안서 "MyFile"은 의미가없는 것으로 저장됩니다. 나는 실제로 다운로드 한 파일의 이름을 제안하는 것을 선호합니다.

덕분에 유라

+0

어떤 언어, 프레임 워크 및 서버를 사용하고 있습니까? –

답변

1

당신은 그것으로이 헤더를 보낼 필요가 : Asp.Net에서

content-disposition: attachment; filename="somefilename.ext" 

는 다음과 같다. 그러나 어떤 언어, 프레임 워크 및 서버를 사용하고 있습니까? (몇 시간 동안 자바를 사용하지 않음)에 대한

protected void doGet(HttpServletRequest request, HttpServletResponse response) 
      throws ServletException, IOException { 
    response.setHeader("content-disposition", "attachment; filename=\"somefilename.ext\""); 

    //Write the file to response and maybe set content type 
} 
+0

제 서버가 Java로 작성되었습니다. (저는 Jetty를 사용합니다) 이 코드는 어떻게 생겼습니까? – Yura

+0

@Yura, 아마도 그런 식으로. 그렇지 않으면 get-file-code를 게시하십시오. –

+0

고마워, 그게 대답 :) – Yura

0

모든 웹 서버가 매핑 파일 확장자, 요청이 이루어진 경우 웹 서버 조회 : 자바 서블릿을 사용하는 경우

context.Response.AddHeader("content-disposition", "attachment; filename=\"somefilename.txt\""); 

는이 같은 것입니다 매핑 테이블의 파일 확장자가 발견되면 aspnet_isapi.dll에 넘겨주는 모든 * .aspx 파일과 같은 해당 처리기로 전달되고 컨트롤은 해당 처리기로 전송되지만 .txt 나 .png 같은 일반 파일은 해당 처리기로 전달됩니다. 당신이 웹 서버 맵핑 테이블에 그 파일 확장자를 추가하고 그 확장을 당신이 원하는 h 시간에 맵핑해야한다면 그것들을 제어하기 위해 IIS를 다루지 않을 것입니다 andler 그리고 나서 당신이 그것을 제어 할 수 있습니다

당신은 (마임 타입 매핑 확장) 검색을 통해 유용한 기사를 많이 찾을 수 있습니다
그것이 도움이되기를 바랍니다!

관련 문제