diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-09-02 22:30:05 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-09-02 22:30:05 -0400 |
| commit | a3d553a7fbe93fe416c940e80d5e511a2d753f25 (patch) | |
| tree | 1f26819204392827767875ee56bc46607948b264 | |
| parent | 6fd05670ac352d69a7044f5ebe9a2c5c9f1d76cf (diff) | |
set connect access token
5 files changed, 33 insertions, 11 deletions
diff --git a/MediaBrowser.Common.Implementations/HttpClientManager/HttpClientManager.cs b/MediaBrowser.Common.Implementations/HttpClientManager/HttpClientManager.cs index 11a5cdf08..ffde10bfe 100644 --- a/MediaBrowser.Common.Implementations/HttpClientManager/HttpClientManager.cs +++ b/MediaBrowser.Common.Implementations/HttpClientManager/HttpClientManager.cs @@ -399,11 +399,7 @@ namespace MediaBrowser.Common.Implementations.HttpClientManager /// <returns>stream on success, null on failure</returns> public async Task<Stream> Post(HttpRequestOptions options, Dictionary<string, string> postData) { - var strings = postData.Keys.Select(key => string.Format("{0}={1}", key, postData[key])); - var postContent = string.Join("&", strings.ToArray()); - - options.RequestContent = postContent; - options.RequestContentType = "application/x-www-form-urlencoded"; + options.SetPostData(postData); var response = await Post(options).ConfigureAwait(false); diff --git a/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj b/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj index 74c812226..4b0c95616 100644 --- a/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj +++ b/MediaBrowser.Common.Implementations/MediaBrowser.Common.Implementations.csproj @@ -122,7 +122,7 @@ </ItemGroup> <ItemGroup /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> - <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition=" '$(ConfigurationName)' != 'Release Mono' " /> + <Import Project="$(SolutionDir)\.nuget\NuGet.targets" /> <PropertyGroup> <PostBuildEvent Condition=" '$(ConfigurationName)' != 'Release Mono' ">if '$(ConfigurationName)' == 'Release' ( xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i diff --git a/MediaBrowser.Common/MediaBrowser.Common.csproj b/MediaBrowser.Common/MediaBrowser.Common.csproj index fd41c7e9e..661073c89 100644 --- a/MediaBrowser.Common/MediaBrowser.Common.csproj +++ b/MediaBrowser.Common/MediaBrowser.Common.csproj @@ -116,7 +116,7 @@ </ItemGroup> <ItemGroup /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> - <Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition=" '$(ConfigurationName)' != 'Release Mono' " /> + <Import Project="$(SolutionDir)\.nuget\NuGet.targets" /> <PropertyGroup> <PostBuildEvent Condition=" '$(ConfigurationName)' != 'Release Mono' ">if '$(ConfigurationName)' == 'Release' ( xcopy "$(TargetPath)" "$(SolutionDir)\Nuget\dlls\" /y /d /r /i diff --git a/MediaBrowser.Common/Net/HttpRequestOptions.cs b/MediaBrowser.Common/Net/HttpRequestOptions.cs index a2b42dedb..97da49318 100644 --- a/MediaBrowser.Common/Net/HttpRequestOptions.cs +++ b/MediaBrowser.Common/Net/HttpRequestOptions.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Threading; namespace MediaBrowser.Common.Net @@ -111,5 +112,14 @@ namespace MediaBrowser.Common.Net LogRequest = true; } + + public void SetPostData(IDictionary<string,string> values) + { + var strings = values.Keys.Select(key => string.Format("{0}={1}", key, values[key])); + var postContent = string.Join("&", strings.ToArray()); + + RequestContent = postContent; + RequestContentType = "application/x-www-form-urlencoded"; + } } } diff --git a/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs b/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs index fba098dab..af1628ba4 100644 --- a/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs +++ b/MediaBrowser.Server.Implementations/Connect/ConnectManager.cs @@ -10,7 +10,6 @@ using System; using System.Collections.Generic; using System.Globalization; using System.IO; -using System.Net; using System.Text; using System.Threading; using System.Threading.Tasks; @@ -113,7 +112,12 @@ namespace MediaBrowser.Server.Implementations.Connect { var url = "Servers"; url = GetConnectUrl(url); - var postData = new Dictionary<string, string> {{"name", _appHost.FriendlyName}, {"url", wanApiAddress}}; + + var postData = new Dictionary<string, string> + { + {"name", _appHost.FriendlyName}, + {"url", wanApiAddress} + }; using (var stream = await _httpClient.Post(url, postData, CancellationToken.None).ConfigureAwait(false)) { @@ -131,12 +135,24 @@ namespace MediaBrowser.Server.Implementations.Connect var url = "Servers"; url = GetConnectUrl(url); url += "?id=" + ConnectServerId; - var postData = new Dictionary<string, string> {{"name", _appHost.FriendlyName}, {"url", wanApiAddress}}; // TODO: Add Access-Key http request header + var options = new HttpRequestOptions + { + Url = url, + CancellationToken = CancellationToken.None + }; + + options.SetPostData(new Dictionary<string, string> + { + {"name", _appHost.FriendlyName}, + {"url", wanApiAddress} + }); + + options.RequestHeaders.Add("X-Connect-Token", ConnectAccessKey); // No need to examine the response - using (var stream = await _httpClient.Post(url, postData, CancellationToken.None).ConfigureAwait(false)) + using (var stream = (await _httpClient.Post(options).ConfigureAwait(false)).Content) { } } |
