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