今回は、ブラウザのアクセスパスでダウンロードが促されず、新規ページが表示される問題の解決方法をご紹介します。次は実際のケースを見てみましょう。
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 中国語 Web サイト
その他の Python3はQQメールボックスを介して電子メールをどのように送信しますかnodejsはjsonpを介してシングルサインオンを実装する方法以上がブラウザのアクセスパスでダウンロードを促すメッセージが表示されず、新しいページが表示される問題の解決方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。