이번에는 브라우저 액세스 경로에서 다운로드 메시지가 표시되지 않고 새 페이지가 표시되는 문제를 해결하는 방법을 알려 드리겠습니다. 다음은 실제 사례를 한 번 살펴보겠습니다.
nodejs 코드를 예로 들면, "/video"에 액세스할 때 브라우저에 내장된 재생 페이지로 점프하겠습니다.
코드:
var http = require('http');var fs = require('fs');var url = require('url');var routes = {//<====路由 "/video"(request, response) { fs.readFile("frag_bunny.mp4", 'binary', function (err, data) { if (err) { console.log(err); response.writeHead(500, { 'Content-Type': 'text/html' }); } else { response.writeHead(200, { 'Content-Type': 'video/mp4' });//<====mp4标识 response.write(data, 'binary'); } response.end(); }); }, "/frag_bunny.mp4"(request, response) { fs.readFile("frag_bunny.mp4", 'binary', function (err, data) { if (err) { console.log(err); response.writeHead(500, { 'Content-Type': 'text/html' }); } else { response.writeHead(200, { 'Content-Type': 'application/octet-stream' });//<====文件流标识 response.write(data, 'binary'); } response.end(); }); }, "/"(request, response) { response.writeHead(200, { 'Content-Type': 'text/html' }); response.write(` <a target= "_blank" href="/video">打开页面显示播放界面</a> <br /> <a target= "_blank" href="/frag_bunny.mp4">打开页面提示下载</a> `); response.end(); }, "/404"(request, response) { response.writeHead(404, { 'Content-Type': 'text/html' }); response.write("404"); response.end(); } }// 创建服务器http.createServer(function (request, response) { // 解析请求,包括文件名 var pathname = url.parse(request.url).pathname; // 输出请求的文件名 console.log("Request for " + pathname + " received."); route = routes[pathname] if (route) { route(request, response); } else { routes["/404"](request, response); } }).listen(8889);
믿으세요. 이 기사의 사례를 읽고 나면 방법을 마스터하셨으니 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트
기타 python3은 어떻게 qq 사서함을 통해 이메일을 보내는가nodejs는 jsonp를 통해 Single Sign-On 데모를 어떻게 구현합니까위 내용은 브라우저 액세스 경로에서 다운로드 메시지가 표시되지 않고 새 페이지가 표시되는 문제를 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!