private string FormatHeaders(IEnumerable <HttpHeader> headers) { var stringBuilder = new StringBuilder(); foreach (HttpHeader header in headers) { stringBuilder.Append(header.Name); stringBuilder.Append(':'); string newValue = _sanitizer.SanitizeHeader(header.Name, header.Value); stringBuilder.AppendLine(newValue); } return(stringBuilder.ToString()); }
public string CreateRequestFailedMessageWithContent(Response response, string?message, string?content, string?errorCode, IDictionary <string, string>?additionalInfo) { StringBuilder messageBuilder = new StringBuilder() .AppendLine(message ?? DefaultMessage) .Append("Status: ") .Append(response.Status.ToString(CultureInfo.InvariantCulture)) .Append(" (") .Append(response.ReasonPhrase) .AppendLine(")"); if (!string.IsNullOrWhiteSpace(errorCode)) { messageBuilder.Append("ErrorCode: ") .Append(errorCode) .AppendLine(); } if (additionalInfo != null && additionalInfo.Count > 0) { messageBuilder .AppendLine() .AppendLine("Additional Information:"); foreach (KeyValuePair <string, string> info in additionalInfo) { messageBuilder .Append(info.Key) .Append(": ") .AppendLine(info.Value); } } if (content != null) { messageBuilder .AppendLine() .AppendLine("Content:") .AppendLine(content); } messageBuilder .AppendLine() .AppendLine("Headers:"); foreach (HttpHeader responseHeader in response.Headers) { string headerValue = _sanitizer.SanitizeHeader(responseHeader.Name, responseHeader.Value); messageBuilder.AppendLine($"{responseHeader.Name}: {headerValue}"); } return(messageBuilder.ToString()); }