권장 : ASP 프로그램을 사용하여 디스크에 파일이 있는지 확인하는 방법 다음은 인용 된 내용입니다. <%dim objfolderdim objfsodim j set fso = server.createobject (scripting.filesystemobject & q
ASP를 사용하여 특정 장치의 웹 페이지를 만들 때 그러한 문제가 발생했습니다. 이 장치의 이전 MIS 시스템에서 일부 Word 파일은 데이터베이스에 바이트 스트림 형태로 저장되었습니다. 이제 사용자는 ASP를 사용하여 데이터베이스 에서이 Word 파일 데이터를 가져와 웹 페이지에 표시하도록 요청했습니다. 처음에는 자연스럽게 서버에서 임시 파일을 작성한 다음 웹 페이지에 임시 파일에 링크를 추가 할 생각을했습니다. 그러나이 방법은 서버의 부담을 크게 증가시킵니다. 서비스에서 다른 클라이언트가 사용하는 파일에서 특정 클라이언트가 사용하는 임시 파일을 덮어 쓰지 않도록하는 방법과 파일이 사용자에게 전송 된 후 파일을 삭제하는 방법을 보장하는 방법입니다. 이러한 문제는 실제로 해결하기가 어렵습니다. 더 나은 방법이 있습니까?
--- 이러한 이유로 ASP 참조 북을주의 깊게 살펴보고 응답 객체에 ContentType라는 속성이 있음을 발견했습니다. Mime의 성명은 다목적 인터넷 메일 확장이며 다기능 인터넷 메일 확장입니다. 우리는 웹 프로그래밍에서 때때로 하이퍼 링크를 단어 또는 Excel 파일에 가리키는 것을 알고 있습니다. 사용자 가이 링크를 클릭하면 브라우저가 자동으로 해당 메소드를 호출하여 파일을 엽니 다. 이를 수행 할 수있는 이유는 사용자 시스템에 사무실을 설치 한 후 해당 MIME 리소스 유형이 브라우저에 등록되기 때문입니다. 예를 들어, Word 파일의 MIME 유형은 Application/Msword입니다 (전자는 MIME 유형이고 후자는 MIME 서브 클래스)이며 Excel 파일의 MIME 리소스 유형은 Application/Msexcel입니다. 실제로 브라우저에서 처리 할 수있는 모든 리소스에는 해당 MIME 리소스 유형이 있습니다. 예를 들어, HTML 파일의 MIME 유형은 Text/HTML이며 JPG 파일의 MIME 유형은 이미지/jpg입니다. 서버와의 상호 작용에서 브라우저는 수신 된 데이터 유형의 데이터 유형을 기반으로 수행 할 처리가 어떤 종류의 처리를 결정하고, HTML 및 JPG와 같은 파일 브라우저에 대해 직접 엽니 다. MIME 유형으로 표시되지 않은 파일의 경우 브라우저는 확장 및 파일 컨텐츠를 기반으로 유형을 추측합니다. 브라우저가 추측 할 수없는 경우 응용 프로그램/옥켓 스트림으로 사용하십시오. 다양한 파일의 MIME 유형을 이해하려면 Win98 내 컴퓨터 ->보기 -> 폴더 옵션 -> 파일 유형에서 확인하십시오.
---- 그래서 나는 갑자기 영감을 얻었고 ASP에서 먼저 바이트 스트림으로 단어 데이터를 꺼낸 다음 ContentType 속성을 응용 프로그램/msword로 표시 한 다음 클라이언트로 보낼 수 있다고 생각했습니다. 클라이언트 가이 리소스를 수신 한 후에는 MIME 유형에 따라 클라이언트에서 자동으로 Word를 호출합니다 (물론, 전제는 클라이언트에 단어가 설치되어 있다는 것입니다. 그렇지 않으면 인식 할 수없는 리소스로 사용되며 사용자가 그것을 열지 않고 저장하라는 메시지가 표시됩니다). 테스트 결과는 매우 우수하고 방법은 간단하고 빠르며 IE 5에서 브라우저는 임베디드 방법 (OLE 메소드와 유사)을 사용하여 더 나은 결과를 제공합니다. 다음은 프로그램 내용입니다.
--- 테이블 이름이 tab_word이고 테이블에 두 개의 필드가 있다고 가정합니다. 하나는 정수 유형과 ID이며, 단어 데이터의 고유 식별자로 사용됩니다. 다른 하나는 단어 데이터를 저장하는 Blob 유형과 WordData입니다. 이제 페이지에 ID가 1과 같은 Word 파일의 내용을 표시하려면 ASP 프로그램은 다음과 같습니다.
| <% 'Conn- 생성 된 데이터베이스 연결 'RS- 결과 세트 rs = conn.execute (select tab_word의 WordData id = 1) 응답 .ContentType = 응용 프로그램/msword Response.writeBinary (RS (WordData)) '결과 세트의 데이터는 writeBinary를 사용하여 직접 전송되며 변수를 사용하지 않습니다. '이 데이터를 받으십시오. 그렇지 않으면 시스템이 오류를보고합니다. %> |
공유 : 결함 해상도 : 실행중인 ASP 스크립트의 시간 초과를 해결하는 방법 최근에 서버 지식을 배우고 있습니다. 때로는 ASP 스크립트가 타임 아웃을 실행하는 오류가 발생합니다. 관련 정보를 찾았고 몇 가지 해결책이 있습니다. IIS의 기본 스크립트 타임 아웃은 90 초입니다. 소프트웨어를 업로드하거나 데이터를 전송하는 경우 90 초 이상