[技術討論] 用php readfile 去download mp4

header("Cache-Control: public");
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=text.mp4");
header("Content-Type: video/mp4");
header("Content-Transfer-Encoding: binary");
readfile("http://www.aaa/text.mp4");

點解download完播唔到, 話格式不支援.

我直接用另存檔案又可以播.

download完file size都一樣.

(就咁check file size唔夠準, 最好用checksum)

TOP

本帖最後由 twaiho2003 於 2016-5-3 17:30 編輯

試下用node.js, 你copy我段code改左host同path個value , 跟住直接run

var fs = require('fs')
var http = require('http')

var options = {host:"www.aaa", path:"/text.mp4"}

write_to_file(options, "test.mp4")

function write_to_file(options, filename) {

        http.get(options, function(res){
                        var imagedata = ''
                        res.setEncoding('binary')

                        res.on('data', function(chunk){
                                        imagedata += chunk
                        })

                        res.on('end', function(){
                                        fs.writeFile( filename, imagedata, 'binary', function(err){
                                                        if (err) throw err
                                        })
                        })

        })

}

TOP

試下用node.js, 你copy我段code改左host同path個value , 跟住直接run

var fs = require('fs')
var http =  ...
twaiho2003 發表於 2016-5-3 17:28



    node.js 直頭用人地寫好library啦

TOP

回覆 4# stta800


    有d難度果D就會用, 例如download youtube

TOP

回覆 3# twaiho2003

run左無反應

TOP

回覆 6# as123123


    冇反應係正常,  有個test.mp4會download左係你run果個directory

TOP

node.js 我完全唔識,
有無得用返php 可以 download 到?

TOP

php用composer搵library

TOP

回覆 8# as123123

改左個$url同$img value,  再改大php memory limit, 因為file_get_contents好食ram, download片可能會唔夠
    <?php

$url = 'https://upload.wikimedia.org/wikipedia/commons/4/49/Dell_Inspiron_One_23_Touch_AIO_Desktop_PC.png';
$img = 'flower.png';
file_put_contents($img, file_get_contents($url));

?>

TOP