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::HTTP_PROXY_KEY_HOST = "host"; 58 const char *const HttpConstant::HTTP_PROXY_KEY_PORT = "port"; 59 const char *const HttpConstant::HTTP_PROXY_KEY_EXCLUSION_LIST = "exclusionList"; 60 61 const char *const HttpConstant::HTTP_CLIENT_CERT = "certPath"; 62 const char *const HttpConstant::HTTP_CLIENT_KEY = "keyPath"; 63 const char *const HttpConstant::HTTP_CLIENT_CERT_TYPE = "certType"; 64 const char *const HttpConstant::HTTP_CLIENT_KEY_PASSWD = "keyPassword"; 65 66 const char *const HttpConstant::HTTP_PUBLIC_KEY_HASH = "publicKeyHash"; 67 const char *const HttpConstant::HTTP_HASH_ALGORITHM = "hashAlgorithm"; 68 69 const char *const HttpConstant::HTTP_CERT_TYPE_PEM = "PEM"; 70 const char *const HttpConstant::HTTP_CERT_TYPE_DER = "DER"; 71 const char *const HttpConstant::HTTP_CERT_TYPE_P12 = "P12"; 72 73 const char *const HttpConstant::HTTP_PROXY_EXCLUSIONS_SEPARATOR = ","; 74 75 const char *const HttpConstant::RESPONSE_KEY_RESULT = "result"; 76 const char *const HttpConstant::RESPONSE_KEY_RESPONSE_CODE = "responseCode"; 77 const char *const HttpConstant::RESPONSE_KEY_HEADER = "header"; 78 const char *const HttpConstant::RESPONSE_KEY_COOKIES = "cookies"; 79 const char *const HttpConstant::RESPONSE_KEY_RESULT_TYPE = "resultType"; 80 const char *const HttpConstant::RESPONSE_KEY_SET_COOKIE = "set-cookie"; 81 const char *const HttpConstant::RESPONSE_KEY_SET_COOKIE_SEPARATOR = "\r\n"; 82 83 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_NAME = "name"; 84 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_CONTENT_TYPE = "contentType"; 85 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_REMOTE_FILE_NAME = "remoteFileName"; 86 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_DATA = "data"; 87 const char *const HttpConstant::HTTP_MULTI_FORM_DATA_FILE_PATH = "filePath"; 88 89 const char *const HttpConstant::HTTP_URL_PARAM_START = "?"; 90 const char *const HttpConstant::HTTP_URL_PARAM_SEPARATOR = "&"; 91 const char *const HttpConstant::HTTP_URL_NAME_VALUE_SEPARATOR = "="; 92 const char *const HttpConstant::HTTP_HEADER_SEPARATOR = ":"; 93 const char *const HttpConstant::HTTP_HEADER_BLANK_SEPARATOR = ";"; 94 const char *const HttpConstant::HTTP_LINE_SEPARATOR = "\r\n"; 95 const char *const HttpConstant::HTTP_RESPONSE_HEADER_SEPARATOR = "\r\n\r\n"; 96 97 const char *const HttpConstant::HTTP_DEFAULT_USER_AGENT = "libcurl-agent/1.0"; 98 99 const char *const HttpConstant::HTTP_PREPARE_CA_PATH = "/etc/security/certificates"; 100 const char *const HttpConstant::HTTP_CONTENT_TYPE = "content-type"; 101 const char *const HttpConstant::HTTP_CONTENT_TYPE_URL_ENCODE = "application/x-www-form-urlencoded"; 102 const char *const HttpConstant::HTTP_CONTENT_TYPE_JSON = "application/json"; 103 const char *const HttpConstant::HTTP_CONTENT_TYPE_OCTET_STREAM = "application/octet-stream"; 104 const char *const HttpConstant::HTTP_CONTENT_TYPE_IMAGE = "image"; 105 const char *const HttpConstant::HTTP_CONTENT_TYPE_MULTIPART = "multipart/form-data"; 106 107 const char *const HttpConstant::HTTP_CONTENT_ENCODING_GZIP = "gzip"; 108 109 const char *const HttpConstant::REQUEST_TIME = "requestTime"; 110 const char *const HttpConstant::RESPONSE_TIME = "responseTime"; 111 const char *const HttpConstant::RESPONSE_PERFORMANCE_TIMING = "performanceTiming"; 112 const char *const HttpConstant::RESPONSE_DNS_TIMING = "dnsTiming"; 113 const char *const HttpConstant::RESPONSE_TCP_TIMING = "tcpTiming"; 114 const char *const HttpConstant::RESPONSE_TLS_TIMING = "tlsTiming"; 115 const char *const HttpConstant::RESPONSE_FIRST_SEND_TIMING = "firstSendTiming"; 116 const char *const HttpConstant::RESPONSE_FIRST_RECEIVE_TIMING = "firstReceiveTiming"; 117 const char *const HttpConstant::RESPONSE_TOTAL_FINISH_TIMING = "totalFinishTiming"; 118 const char *const HttpConstant::RESPONSE_REDIRECT_TIMING = "redirectTiming"; 119 const char *const HttpConstant::RESPONSE_HEADER_TIMING = "responseHeaderTiming"; 120 const char *const HttpConstant::RESPONSE_BODY_TIMING = "responseBodyTiming"; 121 const char *const HttpConstant::RESPONSE_TOTAL_TIMING = "totalTiming"; 122 } // namespace OHOS::NetStack::Http 123