Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 6c6ae42

Browse files
committedDec 29, 2018
🚧 Add mimeType field in POST /file
1 parent 554bcfc commit 6c6ae42

File tree

4 files changed

+13
-16
lines changed

4 files changed

+13
-16
lines changed
 

‎api/qiniu/create-file.go

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ type PutRet struct {
3030
MimeType string
3131
}
3232

33-
// TODO: nil
3433
// UploadFile 文件上传
3534
// @Summary 文件上传
3635
// @Description 支持任何格式的文件上传
@@ -65,6 +64,7 @@ func UploadFile(c *gin.Context) {
6564
// TODO: 文件上传改为字节或者数据 https://gist.github.com/ZenGround0/49e4a1aa126736f966a1dfdcb84abdae
6665
var fileName = file.Filename
6766
var bucket = createQuery.Bucket
67+
var mimeType = file.Header["Content-Type"][0]
6868

6969
// 读取文件的具体内容
7070
srcFile, err := file.Open()
@@ -87,11 +87,7 @@ func UploadFile(c *gin.Context) {
8787
// TODO: 由于目前对于文件流操作不熟悉,暂时采用上传到服务器之后再传一份到七牛云服务器,后期优化为数据流上传的方式。
8888

8989
// 文件上传需要增加的一些额外选项
90-
putExtra := storage.PutExtra{
91-
Params: map[string]string{
92-
"x:name": fileName,
93-
},
94-
}
90+
putExtra := storage.PutExtra{}
9591

9692
// 用于存储上传成功后的返回数据
9793
putRet := PutRet{}
@@ -112,12 +108,11 @@ func UploadFile(c *gin.Context) {
112108
/* ============= 数据入库 ============= */
113109
// 定义入库数据模型
114110
f := model.FileModel{
115-
Name: url.QueryEscape(putRet.Key),
116-
Key: putRet.Hash,
117-
Bucket: bucket,
118-
Size: putRet.Fsize,
119-
// TODO: 这个 fileType待定
120-
Type: putRet.MimeType,
111+
Name: url.QueryEscape(putRet.Key),
112+
Key: putRet.Hash,
113+
Bucket: bucket,
114+
Size: putRet.Fsize,
115+
MimeType: mimeType,
121116
}
122117

123118
// 存入数据库

‎db.sql

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,10 @@ drop table `tb_files`;
3535

3636
create table if not exists `tb_files`(
3737
`id` bigint(20) unsigned not null primary key auto_increment,
38+
`createdAt` timestamp null default null
3839
`name` varchar(255) not null,
3940
`key` varchar(255) not null,
4041
`bucket` varchar(255) not null,
41-
`createdAt` timestamp null default null
42+
`size` int,
43+
`mimeType` varchar(255) not null,
4244
)

‎model/file.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,12 @@ type UpdateDetailModel struct {
1414

1515
type FileModel struct {
1616
Id uint64 `json:"id" gorm:"primary_key;AUTO_INCREMENT;column:id"`
17-
CreatedAt time.Time `json:"createTime" gorm:"column:createdAt"`
17+
CreatedAt time.Time `json:"create_time" gorm:"column:createdAt"`
1818
Name string `json:"name" grom:"column: name;not null" binding:"required"`
1919
Key string `json:"key" grom:"column: key;not null" binding:"required"`
2020
Bucket string `json:"bucket" grom:"column: bucket;not null" binding:"required"`
2121
Size int `json:"size" grom:"column: size;not null" binding:"required"`
22-
Type string `json:"type" grom:"column: type;not null" binding:"required"`
22+
MimeType string `json:"mime_type" grom:"column: mimeType;not null" binding:"required"`
2323
}
2424

2525
type FileList struct {

‎service/file.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ func ListFile(bucket string, page, size int) ([]*model.FileModel, uint64, error)
5555
Key: f.Key,
5656
Bucket: f.Bucket,
5757
Size: f.Size,
58-
Type: f.Type,
58+
MimeType: f.MimeType,
5959
}
6060
}(f)
6161
}

0 commit comments

Comments
 (0)
Please sign in to comment.