Laravel 响应发送 Android APK 文件

Sal*_*lar 3 php http laravel

我正在使用此代码将 android APK 文件发送到客户端,客户端很好地下载了此文件,但客户端无法解析此文件,可能是因为 mime 类型。

return response()->file($path ,['Content-Type'=>'application/vnd.android.package-archive']) ; 
Run Code Online (Sandbox Code Playgroud)

客户端得到一个名为“android”的文件,没有任何扩展名。如何将带有扩展名的 android 文件发送到客户端。

小智 6

您可以使用

\n\n
return response()->download($pathToFile, $name, $headers);\n
Run Code Online (Sandbox Code Playgroud)\n\n

但是 download() 函数会告诉客户端从 Web 服务器下载文件,因此文件的路径必须指向网站的 \xe2\x80\x9cpublic\xe2\x80\x9d 文件夹。但是,如果您的文件受到保护并且您希望 Laravel 应用程序发送文件,请使用此代码片段

\n\n
return response()->file($path ,[\n    \'Content-Type\'=>\'application/vnd.android.package-archive\',\n    \'Content-Disposition\'=> \'attachment; filename="android.apk"\',\n]) ;\n
Run Code Online (Sandbox Code Playgroud)\n