constants.go raw
1 /*
2 * Copyright 2017 Baidu, Inc.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
5 * except in compliance with the License. You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software distributed under the
10 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
11 * either express or implied. See the License for the specific language governing permissions
12 * and limitations under the License.
13 */
14
15 // constants.go - defines constants of the BCE http package including headers and methods
16
17 package http
18
19 // Constants of the supported HTTP methods for BCE
20 const (
21 GET = "GET"
22 PUT = "PUT"
23 POST = "POST"
24 DELETE = "DELETE"
25 HEAD = "HEAD"
26 OPTIONS = "OPTIONS"
27 PATCH = "PATCH"
28 )
29
30 // Constants of the HTTP headers for BCE
31 const (
32 // Standard HTTP Headers
33 AUTHORIZATION = "Authorization"
34 CACHE_CONTROL = "Cache-Control"
35 CONTENT_DISPOSITION = "Content-Disposition"
36 CONTENT_ENCODING = "Content-Encoding"
37 CONTENT_LANGUAGE = "Content-Language"
38 CONTENT_LENGTH = "Content-Length"
39 CONTENT_MD5 = "Content-Md5"
40 CONTENT_RANGE = "Content-Range"
41 CONTENT_TYPE = "Content-Type"
42 DATE = "Date"
43 ETAG = "Etag"
44 EXPIRES = "Expires"
45 HOST = "Host"
46 LAST_MODIFIED = "Last-Modified"
47 LOCATION = "Location"
48 RANGE = "Range"
49 SERVER = "Server"
50 TRANSFER_ENCODING = "Transfer-Encoding"
51 USER_AGENT = "User-Agent"
52
53 // BCE Common HTTP Headers
54 BCE_PREFIX = "x-bce-"
55 BCE_ACL = "x-bce-acl"
56 BCE_GRANT_READ = "x-bce-grant-read"
57 BCE_GRANT_FULL_CONTROL = "x-bce-grant-full-control"
58 BCE_CONTENT_SHA256 = "x-bce-content-sha256"
59 BCE_CONTENT_CRC32 = "x-bce-content-crc32"
60 BCE_CONTENT_CRC32C = "x-bce-content-crc32c"
61 BCE_CONTENT_CRC32C_FLAG = "x-bce-content-crc32c-flag"
62 BCE_REQUEST_ID = "x-bce-request-id"
63 BCE_USER_METADATA_PREFIX = "x-bce-meta-"
64 BCE_SECURITY_TOKEN = "x-bce-security-token"
65 BCE_DATE = "x-bce-date"
66 BCE_TAG = "x-bce-tag-list"
67
68 // BOS HTTP Headers
69 BCE_COPY_METADATA_DIRECTIVE = "x-bce-metadata-directive"
70 BCE_COPY_TAGGING_DIRECTIVE = "x-bce-tagging-directive"
71 BCE_COPY_SOURCE = "x-bce-copy-source"
72 BCE_COPY_SOURCE_IF_MATCH = "x-bce-copy-source-if-match"
73 BCE_COPY_SOURCE_IF_MODIFIED_SINCE = "x-bce-copy-source-if-modified-since"
74 BCE_COPY_SOURCE_IF_NONE_MATCH = "x-bce-copy-source-if-none-match"
75 BCE_COPY_SOURCE_IF_UNMODIFIED_SINCE = "x-bce-copy-source-if-unmodified-since"
76 BCE_COPY_SOURCE_RANGE = "x-bce-copy-source-range"
77 BCE_DEBUG_ID = "x-bce-debug-id"
78 BCE_OBJECT_TYPE = "x-bce-object-type"
79 BCE_NEXT_APPEND_OFFSET = "x-bce-next-append-offset"
80 BCE_STORAGE_CLASS = "x-bce-storage-class"
81 BCE_PROCESS = "x-bce-process"
82 BCE_RESTORE_TIER = "x-bce-restore-tier"
83 BCE_RESTORE_DAYS = "x-bce-restore-days"
84 BCE_RESTORE = "x-bce-restore"
85 BCE_FORBID_OVERWRITE = "x-bce-forbid-overwrite"
86 BCE_SYMLINK_TARGET = "x-bce-symlink-target"
87 BCE_SYMLINK_BUCKET = "x-bce-symlink-bucket"
88 BCE_TRAFFIC_LIMIT = "x-bce-traffic-limit"
89 BCE_BUCKET_TYPE = "x-bce-bucket-type"
90 BCE_OBJECT_TAGGING = "x-bce-tagging"
91 BCE_FETCH_CALLBACK_ADDRESS = "x-bce-callback-address"
92 BCE_VERSION_ID = "x-bce-version-id"
93 BCE_OBJECT_EXPIRES = "x-bce-object-expires"
94 BCE_EXPIRATION_DATE = "x-bce-expiration-date"
95 BCE_SERVER_SIDE_ENCRYPTION = "x-bce-server-side-encryption"
96 BCE_SERVER_SIDE_ENCRYPTION_KEY = "x-bce-server-side-encryption-customer-key"
97 BCE_SERVER_SIDE_ENCRYPTION_KEY_MD5 = "x-bce-server-side-encryption-customer-key-md5"
98 BCE_SERVER_SIDE_ENCRYPTION_KEY_ID = "x-bce-server-side-encryption-bos-kms-key-id"
99 BCE_OBJECT_RETENTION_DATE = "x-bce-object-rentention-date"
100 BCE_TAGGING_COUNT = "x-bce-tagging-count"
101 BCE_CONTENT_CRC64ECMA = "x-bce-content-crc64ecma"
102 //post field
103 SUCCESS_ACTION_REDIRECT = "success-action-redirect"
104 SUCCESS_ACTION_STATUS = "success-action-status"
105 //options header
106 ORIGIN = "Origin"
107 ACCESS_CONTROL_REQUEST_METHOD = "Access-Control-Request-Method"
108 ACCESS_CONTROL_REQUEST_HEADERS = "Access-Control-Request-Headers"
109 ACCESS_CONTROL_ALLOW_CREDENTIALS = "Access-Control-Allow-Credentials"
110 ACCESS_CONTROL_ALLOW_HEADERS = "Access-Control-Allow-Headers"
111 ACCESS_CONTROL_ALLOW_METHODS = "Access-Control-Allow-Methods"
112 ACCESS_CONTROL_ALLOW_ORIGIN = "Access-Control-Allow-Origin"
113 ACCESS_CONTROL_EXPOSE_HEADERS = "Access-Control-Expose-Headers"
114 ACCESS_CONTROL_MAX_AGE = "Access-Control-Max-Age"
115 )
116