React中点击锚点标签如何从assets文件夹下载CSV文件
解决锚点标签下载CSV文件报错“File wasn't available on site”的问题
你的代码片段:
<a href="/assets/UserListSample.csv" download="UserListSample.csv"> Click here </a>
可以从以下几个方向排查解决:
校验文件路径准确性
- 确认
assets文件夹的实际位置:如果当前页面不在项目根目录(比如在/pages子文件夹下),相对路径需要调整为../assets/UserListSample.csv;如果是框架项目(如React、Vue),要确保静态资源被放在框架指定的静态目录下(比如Vue的public文件夹) - 检查文件名大小写:Linux服务器对文件名大小写敏感,确保代码里的文件名和实际文件完全一致(比如
UserListSample.csv不能写成userlistsample.csv)
- 确认
确认服务器访问权限配置
- 检查服务器是否允许访问
assets目录,部分服务器或框架会默认限制静态目录的访问权限,需要手动配置开放 - 排查服务器路由规则,避免路由拦截了
/assets开头的请求,导致文件无法被正确返回
- 检查服务器是否允许访问
直接测试文件可访问性
- 在浏览器地址栏输入完整的文件URL(如
http://你的域名/assets/UserListSample.csv),如果无法打开或下载,说明文件本身未被服务器正确托管,先解决这个基础问题
- 在浏览器地址栏输入完整的文件URL(如
调整download属性的使用
- 先去掉
download属性,测试点击链接能否正常打开文件,确认文件可访问后再添加download属性(部分浏览器对不可访问资源的download属性会直接报错) - 确保
href指向的是同域资源,跨域场景下download属性可能被浏览器限制使用
- 先去掉
内容的提问来源于stack exchange,提问作者Unnikrishnan S
相关产品推荐
相关产品推荐

