HTML上传下载代码
时间: 2024-09-20 07:12:06 浏览: 45
html五实现文档上传下载代码
HTML本身并不直接提供文件上传和下载的功能,它更多的是用于页面布局和数据展示。不过,HTML结合一些JavaScript库(如jQuery、axios等)以及后端支持(如PHP、Node.js等),可以实现文件上传和下载。
**文件上传**:
在HTML中,通常使用`<input type="file">`元素让用户选择文件,然后通过Ajax请求将其发送到服务器。服务器接收到文件后处理存储,前端再从服务器获取响应的URL来显示上传成功的信息。
```html
<input type="file" id="upload-file" accept=".txt, .pdf">
<script>
document.getElementById('upload-file').addEventListener('change', function(e) {
var file = e.target.files[0];
// 发送Ajax请求,比如用FormData
var formData = new FormData();
formData.append('file', file);
fetch('/api/upload', {
method: 'POST',
body: formData
})
.then(response => response.text())
.then(data => console.log('上传结果:', data));
});
</script>
```
**文件下载**:
服务器返回的是一个包含文件内容的响应头,如`Content-Disposition`设置为attachment表示下载。客户端接收到这样的响应,会自动下载文件。
```javascript
fetch('/api/download/file.txt')
.then(res => res.blob()) // 将Response转换为Blob
.then(blob => URL.createObjectURL(blob)) // 创建URL引用
.then(url => {
let aLink = document.createElement('a');
aLink.href = url;
aLink.download = 'file.txt';
aLink.click();
});
```
阅读全文