【发布时间】:2020-01-27 13:44:46
【问题描述】:
大家好,我是 Laravel 和 reactjs 的新手,我有一个问题,我尝试将文件从服务器下载到浏览器。我的请求没问题,但我想要的文件不可读(如果我右键单击浏览器网络-> 预览,我发现符号和字符不可读)也没有下载文件。 我使用 Visual Studio 代码在 Windows 中进行编码。
下载控制器:
public function download()
{
$file = public_path()."/file.pdf";
return response()->download($file);
}
路由/api.php:
Route::get('download','Api\DownloadController@download');
在文件Js中:
import React, { Component } from 'react';
import axios from 'axios';
export default class download extends Component{
constructor () {
super();
}
componentDidMount() {
axios.get(`http://127.0.0.1:8000/api/download`)
.then((response) => {
console.log('hello');
});
}
render() {
return (
<div>
<button onClick={this.componentDidMount.bind(this)} className="btn btn-primary">Download</button>
</div>
);
}
}
【问题讨论】:
-
尝试在 laravel 中设置正确的标题。见:stackoverflow.com/a/20415796/592868