• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * 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
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #include "constant.h"
17 
18 namespace OHOS::NetStack::Http {
19 const char *const HttpConstant::HTTP_METHOD_GET = "GET";
20 const char *const HttpConstant::HTTP_METHOD_HEAD = "HEAD";
21 const char *const HttpConstant::HTTP_METHOD_OPTIONS = "OPTIONS";
22 const char *const HttpConstant::HTTP_METHOD_TRACE = "TRACE";
23 const char *const HttpConstant::HTTP_METHOD_DELETE = "DELETE";
24 const char *const HttpConstant::HTTP_METHOD_POST = "POST";
25 const char *const HttpConstant::HTTP_METHOD_PUT = "PUT";
26 const char *const HttpConstant::HTTP_METHOD_CONNECT = "CONNECT";
27 
28 const uint32_t HttpConstant::DEFAULT_MAX_LIMIT = 5 * 1024 * 1024;
29 const uint32_t HttpConstant::MAX_LIMIT = 100 * 1024 * 1024;
30 const uint32_t HttpConstant::DEFAULT_READ_TIMEOUT = 60000;
31 const uint32_t HttpConstant::DEFAULT_CONNECT_TIMEOUT = 60000;
32 
33 const size_t HttpConstant::MAX_JSON_PARSE_SIZE = 65536;
34 
35 const char *const HttpConstant::PARAM_KEY_METHOD = "method";
36 const char *const HttpConstant::PARAM_KEY_EXTRA_DATA = "extraData";
37 const char *const HttpConstant::PARAM_KEY_HEADER = "header";
38 const char *const HttpConstant::PARAM_KEY_MAX_LIMIT = "maxLimit";
39 const char *const HttpConstant::PARAM_KEY_READ_TIMEOUT = "readTimeout";
40 const char *const HttpConstant::PARAM_KEY_DNS_SERVERS = "dnsServers";
41 const char *const HttpConstant::PARAM_KEY_RESUME_FROM = "resumeFrom";
42 const char *const HttpConstant::PARAM_KEY_RESUME_TO = "resumeTo";
43 const char *const HttpConstant::PARAM_KEY_CONNECT_TIMEOUT = "connectTimeout";
44 const char *const HttpConstant::PARAM_KEY_USING_PROTOCOL = "usingProtocol";
45 const char *const HttpConstant::PARAM_KEY_USING_CACHE = "usingCache";
46 const char *const HttpConstant::PARAM_KEY_EXPECT_DATA_TYPE = "expectDataType";
47 const char *const HttpConstant::PARAM_KEY_PRIORITY = "priority";
48 
49 const char *const HttpConstant::PARAM_KEY_USING_HTTP_PROXY = "usingProxy";
50 const char *const HttpConstant::PARAM_KEY_CA_PATH = "caPath";
51 const char *const HttpConstant::PARAM_KEY_DOH_URL = "dnsOverHttps";
52 const char *const HttpConstant::PARAM_KEY_CLIENT_CERT = "clientCert";
53 const char *const HttpConstant::PARAM_KEY_MULTI_FORM_DATA_LIST = "multiFormDataList";
54 
55 const char *const HttpConstant::PARAM_KEY_CERTIFICATE_PINNING = "certificatePinning";
56 
57 const char *const HttpConstant::PARAM_KEY_REMOTE_VALIDATION = "remoteValidation";
58 const char *const HttpConstant::PARAM_KEY_TLS_OPTION = "tlsOptions";
59 const char *const HttpConstant::PARAM_KEY_SERVER_AUTH = "serverAuthentication";
60 
61 const char *const HttpConstant::HTTP_PROXY_KEY_HOST = "host";
62 const char *const HttpConstant::HTTP_PROXY_KEY_PORT = "port";
63 const char *const HttpConstant::HTTP_PROXY_KEY_EXCLUSION_LIST = "exclusionList";
64 
65 const char *const HttpConstant::HTTP_CLIENT_CERT = "certPath";
66 const char *const HttpConstant::HTTP_CLIENT_KEY = "keyPath";
67 const char *const HttpConstant::HTTP_CLIENT_CERT_TYPE = "certType";
68 const char *const HttpConstant::HTTP_CLIENT_KEY_PASSWD = "keyPassword";
69 
70 const char *const HttpConstant::HTTP_PUBLIC_KEY_HASH = "publicKeyHash";
71 const char *const HttpConstant::HTTP_HASH_ALGORITHM = "hashAlgorithm";
72 
73 const char *const HttpConstant::HTTP_CERT_TYPE_PEM = "PEM";
74 const char *const HttpConstant::HTTP_CERT_TYPE_DER = "DER";
75 const char *const HttpConstant::HTTP_CERT_TYPE_P12 = "P12";
76 
77 const char *const HttpConstant::TLS_VERSION_1_0 = "TLS_V_1_0";
78 const char *const HttpConstant::TLS_VERSION_1_1 = "TLS_V_1_1";
79 const char *const HttpConstant::TLS_VERSION_1_2 = "TLS_V_1_2";
80 const char *const HttpConstant::TLS_VERSION_1_3 = "TLS_V_1_3";
81 
82 const char *const HttpConstant::HTTP_PROXY_EXCLUSIONS_SEPARATOR = ",";
83 
84 const char *const HttpConstant::RESPONSE_KEY_RESULT = "result";
85 const char *const HttpConstant::RESPONSE_KEY_RESPONSE_CODE = "responseCode";
86 const char *const HttpConstant::RESPONSE_KEY_HEADER = "header";
87 const char *const HttpConstant::RESPONSE_KEY_COOKIES = "cookies";
88 const char *const HttpConstant::RESPONSE_KEY_RESULT_TYPE = "resultType";
89 const char *const HttpConstant::RESPONSE_KEY_SET_COOKIE = "set-cookie";
90 const char *const HttpConstant::RESPONSE_KEY_SET_COOKIE_SEPARATOR = "\r\n";
91 
92 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_NAME = "name";
93 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_CONTENT_TYPE = "contentType";
94 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_REMOTE_FILE_NAME = "remoteFileName";
95 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_DATA = "data";
96 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_FILE_PATH = "filePath";
97 
98 const char *const HttpConstant::HTTP_URL_PARAM_START = "?";
99 const char *const HttpConstant::HTTP_URL_PARAM_SEPARATOR = "&";
100 const char *const HttpConstant::HTTP_URL_NAME_VALUE_SEPARATOR = "=";
101 const char *const HttpConstant::HTTP_HEADER_SEPARATOR = ":";
102 const char *const HttpConstant::HTTP_HEADER_BLANK_SEPARATOR = ";";
103 const char *const HttpConstant::HTTP_LINE_SEPARATOR = "\r\n";
104 const char *const HttpConstant::HTTP_RESPONSE_HEADER_SEPARATOR = "\r\n\r\n";
105 
106 const char *const HttpConstant::HTTP_DEFAULT_USER_AGENT = "libcurl-agent/1.0";
107 
108 const char *const HttpConstant::HTTP_PREPARE_CA_PATH = "/etc/security/certificates";
109 const char *const HttpConstant::HTTP_CONTENT_TYPE = "content-type";
110 const char *const HttpConstant::HTTP_CONTENT_TYPE_URL_ENCODE = "application/x-www-form-urlencoded";
111 const char *const HttpConstant::HTTP_CONTENT_TYPE_JSON = "application/json";
112 const char *const HttpConstant::HTTP_CONTENT_TYPE_OCTET_STREAM = "application/octet-stream";
113 const char *const HttpConstant::HTTP_CONTENT_TYPE_IMAGE = "image";
114 const char *const HttpConstant::HTTP_CONTENT_TYPE_MULTIPART = "multipart/form-data";
115 
116 const char *const HttpConstant::HTTP_CONTENT_ENCODING_GZIP = "gzip";
117 
118 const char *const HttpConstant::REQUEST_TIME = "requestTime";
119 const char *const HttpConstant::RESPONSE_TIME = "responseTime";
120 const char *const HttpConstant::RESPONSE_PERFORMANCE_TIMING = "performanceTiming";
121 const char *const HttpConstant::RESPONSE_DNS_TIMING = "dnsTiming";
122 const char *const HttpConstant::RESPONSE_TCP_TIMING = "tcpTiming";
123 const char *const HttpConstant::RESPONSE_TLS_TIMING = "tlsTiming";
124 const char *const HttpConstant::RESPONSE_FIRST_SEND_TIMING = "firstSendTiming";
125 const char *const HttpConstant::RESPONSE_FIRST_RECEIVE_TIMING = "firstReceiveTiming";
126 const char *const HttpConstant::RESPONSE_TOTAL_FINISH_TIMING = "totalFinishTiming";
127 const char *const HttpConstant::RESPONSE_REDIRECT_TIMING = "redirectTiming";
128 const char *const HttpConstant::RESPONSE_HEADER_TIMING = "responseHeaderTiming";
129 const char *const HttpConstant::RESPONSE_BODY_TIMING = "responseBodyTiming";
130 const char *const HttpConstant::RESPONSE_TOTAL_TIMING = "totalTiming";
131 
132 const char *const HttpConstant::PARAM_KEY_ADDRESS_FAMILY = "addressFamily";
133 const char *const HttpConstant::HTTP_ADDRESS_FAMILY_UNSPEC = "DEFAULT";
134 const char *const HttpConstant::HTTP_ADDRESS_FAMILY_ONLYV4 = "ONLY_V4";
135 const char *const HttpConstant::HTTP_ADDRESS_FAMILY_ONLYV6 = "ONLY_V6";
136 } // namespace OHOS::NetStack::Http
137