首頁  >  文章  >  web前端  >  瀏覽器訪問路徑不提示下載而顯示新頁面應該如何解決

瀏覽器訪問路徑不提示下載而顯示新頁面應該如何解決

php中世界最好的语言
php中世界最好的语言原創
2018-03-12 11:35:501708瀏覽

這次帶給大家瀏覽器存取路徑不提示下載而顯示新頁面該如何解決,解決瀏覽器存取路徑不提示下載而顯示新頁面的注意事項有哪些,以下就是實戰案例,一起來看一下。

以nodejs程式碼為例,我將實作存取"/video"時跳到瀏覽器的自帶播放頁面,
當存取"/frag_bunny.mp4"時彈出下載提示

程式碼:

var http = require(&#39;http&#39;);var fs = require(&#39;fs&#39;);var url = require(&#39;url&#39;);var routes = {//<====路由
    "/video"(request, response) {
        fs.readFile("frag_bunny.mp4", &#39;binary&#39;, function (err, data) {            if (err) {                console.log(err);
                response.writeHead(500, { &#39;Content-Type&#39;: &#39;text/html&#39; });
            } else {
                response.writeHead(200, { &#39;Content-Type&#39;: &#39;video/mp4&#39; });//<====mp4标识
                response.write(data, &#39;binary&#39;);
            }
            response.end();
        });
    },    "/frag_bunny.mp4"(request, response) {
        fs.readFile("frag_bunny.mp4", &#39;binary&#39;, function (err, data) {            if (err) {                console.log(err);
                response.writeHead(500, { &#39;Content-Type&#39;: &#39;text/html&#39; });
            } else {
                response.writeHead(200, { &#39;Content-Type&#39;: &#39;application/octet-stream&#39; });//<====文件流标识
                response.write(data, &#39;binary&#39;);
            }
            response.end();
        });
    },    "/"(request, response) {
        response.writeHead(200, { &#39;Content-Type&#39;: &#39;text/html&#39; }); 
        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, { &#39;Content-Type&#39;: &#39;text/html&#39; });
        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來實作單一登入Demo

以上是瀏覽器訪問路徑不提示下載而顯示新頁面應該如何解決的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn