mirror of
https://github.com/zigzap/zap.git
synced 2025-10-20 23:24:09 +00:00
fix: use runtime values of HTTP_HEADER_* for getHeaderCommon
This commit is contained in:
parent
5ed5dc2c3a
commit
38c12a0a6b
1 changed files with 33 additions and 16 deletions
|
@ -441,41 +441,58 @@ pub fn getHeader(self: *const Self, name: []const u8) ?[]const u8 {
|
||||||
|
|
||||||
pub const HttpHeaderCommon = enum(usize) {
|
pub const HttpHeaderCommon = enum(usize) {
|
||||||
/// Represents the HTTP Header "Accept".
|
/// Represents the HTTP Header "Accept".
|
||||||
accept = fio.HTTP_HEADER_ACCEPT,
|
accept,
|
||||||
/// Represents the HTTP Header "Cache-Control".
|
/// Represents the HTTP Header "Cache-Control".
|
||||||
cache_control = fio.HTTP_HEADER_CACHE_CONTROL,
|
cache_control,
|
||||||
/// Represents the HTTP Header "Connection".
|
/// Represents the HTTP Header "Connection".
|
||||||
connection = fio.HTTP_HEADER_CONNECTION,
|
connection,
|
||||||
/// Represents the HTTP Header "Content-Encoding".
|
/// Represents the HTTP Header "Content-Encoding".
|
||||||
content_encoding = fio.HTTP_HEADER_CONTENT_ENCODING,
|
content_encoding,
|
||||||
/// Represents the HTTP Header "Content-Length".
|
/// Represents the HTTP Header "Content-Length".
|
||||||
content_length = fio.HTTP_HEADER_CONTENT_LENGTH,
|
content_length,
|
||||||
/// Represents the HTTP Header "Content-Range".
|
/// Represents the HTTP Header "Content-Range".
|
||||||
content_range = fio.HTTP_HEADER_CONTENT_RANGE,
|
content_range,
|
||||||
/// Represents the HTTP Header "Content-Type".
|
/// Represents the HTTP Header "Content-Type".
|
||||||
content_type = fio.HTTP_HEADER_CONTENT_TYPE,
|
content_type,
|
||||||
/// Represents the HTTP Header "Cookie".
|
/// Represents the HTTP Header "Cookie".
|
||||||
cookie = fio.HTTP_HEADER_COOKIE,
|
cookie,
|
||||||
/// Represents the HTTP Header "Date".
|
/// Represents the HTTP Header "Date".
|
||||||
date = fio.HTTP_HEADER_DATE,
|
date,
|
||||||
/// Represents the HTTP Header "Etag".
|
/// Represents the HTTP Header "Etag".
|
||||||
etag = fio.HTTP_HEADER_ETAG,
|
etag,
|
||||||
/// Represents the HTTP Header "Host".
|
/// Represents the HTTP Header "Host".
|
||||||
host = fio.HTTP_HEADER_HOST,
|
host,
|
||||||
/// Represents the HTTP Header "Last-Modified".
|
/// Represents the HTTP Header "Last-Modified".
|
||||||
last_modifed = fio.HTTP_HEADER_LAST_MODIFIED,
|
last_modifed,
|
||||||
/// Represents the HTTP Header "Origin".
|
/// Represents the HTTP Header "Origin".
|
||||||
origin = fio.HTTP_HEADER_ORIGIN,
|
origin,
|
||||||
/// Represents the HTTP Header "Set-Cookie".
|
/// Represents the HTTP Header "Set-Cookie".
|
||||||
set_cookie = fio.HTTP_HEADER_SET_COOKIE,
|
set_cookie,
|
||||||
/// Represents the HTTP Header "Upgrade".
|
/// Represents the HTTP Header "Upgrade".
|
||||||
upgrade = fio.HTTP_HEADER_UPGRADE,
|
upgrade,
|
||||||
};
|
};
|
||||||
|
|
||||||
/// Returns the header value of a given common header key. Returned memory
|
/// Returns the header value of a given common header key. Returned memory
|
||||||
/// should not be freed.
|
/// should not be freed.
|
||||||
pub fn getHeaderCommon(self: *const Self, which: HttpHeaderCommon) ?[]const u8 {
|
pub fn getHeaderCommon(self: *const Self, which: HttpHeaderCommon) ?[]const u8 {
|
||||||
const fiobj = zap.fio.fiobj_hash_get(self.h.*.headers, @intFromEnum(which));
|
const field = switch (which) {
|
||||||
|
.accept => fio.HTTP_HEADER_ACCEPT,
|
||||||
|
.cache_control => fio.HTTP_HEADER_CACHE_CONTROL,
|
||||||
|
.connection => fio.HTTP_HEADER_CONNECTION,
|
||||||
|
.content_encoding => fio.HTTP_HEADER_CONTENT_ENCODING,
|
||||||
|
.content_length => fio.HTTP_HEADER_CONTENT_LENGTH,
|
||||||
|
.content_range => fio.HTTP_HEADER_CONTENT_RANGE,
|
||||||
|
.content_type => fio.HTTP_HEADER_CONTENT_TYPE,
|
||||||
|
.cookie => fio.HTTP_HEADER_COOKIE,
|
||||||
|
.date => fio.HTTP_HEADER_DATE,
|
||||||
|
.etag => fio.HTTP_HEADER_ETAG,
|
||||||
|
.host => fio.HTTP_HEADER_HOST,
|
||||||
|
.last_modified => fio.HTTP_HEADER_LAST_MODIFIED,
|
||||||
|
.origin => fio.HTTP_HEADER_ORIGIN,
|
||||||
|
.set_cookie => fio.HTTP_HEADER_SET_COOKIE,
|
||||||
|
.upgrade => fio.HTTP_HEADER_UPGRADE,
|
||||||
|
};
|
||||||
|
const fiobj = zap.fio.fiobj_hash_get(self.h.*.headers, field);
|
||||||
return zap.fio2str(fiobj);
|
return zap.fio2str(fiobj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue