Merge pull request #1537 from joshuaboniface/contenttype

Properly set content type
This commit is contained in:
Joshua M. Boniface 2019-07-14 17:08:54 -04:00 committed by GitHub
commit 135c16c721
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 6 additions and 57 deletions

View File

@ -155,7 +155,6 @@ namespace Emby.Dlna.PlayTo
}
options.RequestContentType = "text/xml";
options.AppendCharsetToMimeType = true;
options.RequestContent = postData;
return _httpClient.Post(options);

View File

@ -177,10 +177,7 @@ namespace Emby.Server.Implementations.HttpClientManager
/// <param name="httpMethod">The HTTP method.</param>
/// <returns>Task{HttpResponseInfo}.</returns>
public Task<HttpResponseInfo> SendAsync(HttpRequestOptions options, string httpMethod)
{
var httpMethod2 = GetHttpMethod(httpMethod);
return SendAsync(options, httpMethod2);
}
=> SendAsync(options, new HttpMethod(httpMethod));
/// <summary>
/// send as an asynchronous operation.
@ -216,40 +213,6 @@ namespace Emby.Server.Implementations.HttpClientManager
return response;
}
private HttpMethod GetHttpMethod(string httpMethod)
{
if (httpMethod.Equals("DELETE", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Delete;
}
else if (httpMethod.Equals("GET", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Get;
}
else if (httpMethod.Equals("HEAD", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Head;
}
else if (httpMethod.Equals("OPTIONS", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Options;
}
else if (httpMethod.Equals("POST", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Post;
}
else if (httpMethod.Equals("PUT", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Put;
}
else if (httpMethod.Equals("TRACE", StringComparison.OrdinalIgnoreCase))
{
return HttpMethod.Trace;
}
throw new ArgumentException("Invalid HTTP method", nameof(httpMethod));
}
private HttpResponseInfo GetCachedResponse(string responseCachePath, TimeSpan cacheLength, string url)
{
if (File.Exists(responseCachePath)
@ -301,23 +264,15 @@ namespace Emby.Server.Implementations.HttpClientManager
}
else if (options.RequestContent != null)
{
httpWebRequest.Content = new StringContent(options.RequestContent);
httpWebRequest.Content = new StringContent(
options.RequestContent,
null,
options.RequestContentType);
}
else
{
httpWebRequest.Content = new ByteArrayContent(Array.Empty<byte>());
}
// TODO: add correct content type
/*
var contentType = options.RequestContentType ?? "application/x-www-form-urlencoded";
if (options.AppendCharsetToMimeType)
{
contentType = contentType.TrimEnd(';') + "; charset=\"utf-8\"";
}
httpWebRequest.Headers.Add(HeaderNames.ContentType, contentType);*/
}
if (options.LogRequest)

View File

@ -91,8 +91,6 @@ namespace MediaBrowser.Common.Net
public bool EnableDefaultUserAgent { get; set; }
public bool AppendCharsetToMimeType { get; set; }
private string GetHeaderValue(string name)
{
RequestHeaders.TryGetValue(name, out var value);

View File

@ -57,10 +57,9 @@ namespace Mono.Nat.Upnp
req.Url = ss;
req.EnableKeepAlive = false;
req.RequestContentType = "text/xml";
req.AppendCharsetToMimeType = true;
req.RequestHeaders.Add("SOAPACTION", "\"" + device.ServiceType + "#" + upnpMethod + "\"");
string bodyString = "<s:Envelope "
req.RequestContent = "<s:Envelope "
+ "xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\" "
+ "s:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">"
+ "<s:Body>"
@ -70,8 +69,6 @@ namespace Mono.Nat.Upnp
+ "</u:" + upnpMethod + ">"
+ "</s:Body>"
+ "</s:Envelope>\r\n\r\n";
req.RequestContentBytes = System.Text.Encoding.UTF8.GetBytes(bodyString);
return req;
}