Heim  >  Artikel  >  Web-Frontend  >  So lösen Sie das Problem, dass der Browser-Zugriffspfad nicht zum Herunterladen auffordert, sondern eine neue Seite anzeigt

So lösen Sie das Problem, dass der Browser-Zugriffspfad nicht zum Herunterladen auffordert, sondern eine neue Seite anzeigt

php中世界最好的语言
php中世界最好的语言Original
2018-03-12 11:35:501708Durchsuche

Dieses Mal zeige ich Ihnen, wie Sie das Problem der Anzeige einer neuen Seite lösen können, wenn der Browser-Zugriffspfad nicht zum Herunterladen auffordert. Welche Vorsichtsmaßnahmen gibt es, um das Problem der Anzeige einer neuen Seite zu lösen? Der Browser-Zugriffspfad fordert nicht zum Herunterladen auf. Schauen wir uns hier praktische Fälle an.

Am Beispiel des NodeJS-Codes springe ich zur integrierten Wiedergabeseite des Browsers, wenn ich auf „/video“ zugreife.
Beim Zugriff auf „/frag_bunny.mp4“ erscheint eine Download-Eingabeaufforderung wird angezeigt.

Code:

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);

Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie auf der chinesischen PHP-Website andere verwandte Artikel!

Verwandte Lektüre:

So senden Sie E-Mails über das QQ-Postfach in Python3

So implementieren Sie Single Sign-On Demo in NodeJS durch jsonp

Das obige ist der detaillierte Inhalt vonSo lösen Sie das Problem, dass der Browser-Zugriffspfad nicht zum Herunterladen auffordert, sondern eine neue Seite anzeigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn