mirror of
https://github.com/zigzap/zap.git
synced 2025-10-20 23:24:09 +00:00
Accept file with no specified Content-Type
This commit is contained in:
parent
ec7cac6f6a
commit
4e1b50aca8
1 changed files with 11 additions and 4 deletions
|
@ -125,12 +125,19 @@ fn parseBinfilesFrom(a: Allocator, o: fio.FIOBJ) !HttpParam {
|
|||
fio.fiobj_free_wrapped(key_name);
|
||||
fio.fiobj_free_wrapped(key_data);
|
||||
fio.fiobj_free_wrapped(key_type);
|
||||
} // files: they should have "data", "type", and "filename" keys
|
||||
if (fio.fiobj_hash_haskey(o, key_data) == 1 and fio.fiobj_hash_haskey(o, key_type) == 1 and fio.fiobj_hash_haskey(o, key_name) == 1) {
|
||||
} // files: they should have "data" and "filename" keys
|
||||
if (fio.fiobj_hash_haskey(o, key_data) == 1 and fio.fiobj_hash_haskey(o, key_name) == 1) {
|
||||
const filename = fio.fiobj_obj2cstr(fio.fiobj_hash_get(o, key_name));
|
||||
const mimetype = fio.fiobj_obj2cstr(fio.fiobj_hash_get(o, key_type));
|
||||
const data = fio.fiobj_hash_get(o, key_data);
|
||||
|
||||
var mimetype: []const u8 = undefined;
|
||||
if (fio.fiobj_hash_haskey(o, key_type) == 1) {
|
||||
const mt = fio.fiobj_obj2cstr(fio.fiobj_hash_get(o, key_type));
|
||||
mimetype = mt.data[0..mt.len];
|
||||
} else {
|
||||
mimetype = &"application/octet-stream".*;
|
||||
}
|
||||
|
||||
var data_slice: ?[]const u8 = null;
|
||||
|
||||
switch (fio.fiobj_type(data)) {
|
||||
|
@ -221,7 +228,7 @@ fn parseBinfilesFrom(a: Allocator, o: fio.FIOBJ) !HttpParam {
|
|||
|
||||
return .{ .Hash_Binfile = .{
|
||||
.filename = filename.data[0..filename.len],
|
||||
.mimetype = mimetype.data[0..mimetype.len],
|
||||
.mimetype = mimetype,
|
||||
.data = data_slice,
|
||||
} };
|
||||
} else {
|
||||
|
|
Loading…
Add table
Reference in a new issue