(self, request_headers: HTTPHeadersDict)
| 198 | return data |
| 199 | |
| 200 | def _compute_new_headers(self, request_headers: HTTPHeadersDict) -> HTTPHeadersDict: |
| 201 | new_headers = HTTPHeadersDict() |
| 202 | for name, value in request_headers.copy().items(): |
| 203 | if value is None: |
| 204 | continue # Ignore explicitly unset headers |
| 205 | |
| 206 | original_value = value |
| 207 | if type(value) is not str: |
| 208 | value = value.decode() |
| 209 | |
| 210 | if name.lower() == 'user-agent' and value.startswith('HTTPie/'): |
| 211 | continue |
| 212 | |
| 213 | if name.lower() == 'cookie': |
| 214 | for cookie_name, morsel in SimpleCookie(value).items(): |
| 215 | if not morsel['path']: |
| 216 | morsel['path'] = DEFAULT_COOKIE_PATH |
| 217 | self.cookie_jar.set(cookie_name, morsel) |
| 218 | |
| 219 | request_headers.remove_item(name, original_value) |
| 220 | continue |
| 221 | |
| 222 | for prefix in SESSION_IGNORED_HEADER_PREFIXES: |
| 223 | if name.lower().startswith(prefix.lower()): |
| 224 | break |
| 225 | else: |
| 226 | new_headers.add(name, value) |
| 227 | |
| 228 | return new_headers |
| 229 | |
| 230 | def update_headers(self, request_headers: HTTPHeadersDict): |
| 231 | """ |
no test coverage detected