(payload: TelemetryPayload, signal?: AbortSignal)
| 169 | } |
| 170 | |
| 171 | private async sendHttp(payload: TelemetryPayload, signal?: AbortSignal): Promise<void> { |
| 172 | const token = this.getAccessToken === null ? null : await this.getAccessToken(); |
| 173 | const headers: Record<string, string> = { |
| 174 | 'Content-Type': 'application/json', |
| 175 | }; |
| 176 | if (token !== null && token.length > 0) { |
| 177 | headers['Authorization'] = `Bearer ${token}`; |
| 178 | } |
| 179 | |
| 180 | const response = await this.post(payload, headers, signal); |
| 181 | if (response.status === 401 && headers['Authorization'] !== undefined) { |
| 182 | delete headers['Authorization']; |
| 183 | const retry = await this.post(payload, headers, signal); |
| 184 | handleStatus(retry.status); |
| 185 | return; |
| 186 | } |
| 187 | handleStatus(response.status); |
| 188 | } |
| 189 | |
| 190 | private async post( |
| 191 | payload: TelemetryPayload, |
no test coverage detected