diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2010-02-08 08:11:58 -0800 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2010-02-08 08:11:58 -0800 |
commit | e8fb7ce1481187d8799acae7efc273a265aec786 (patch) | |
tree | b8049f0765e7a4a7cba961b2920e24163a487e6d | |
parent | 0aac1cab4c6975cb5bf52f3b69ec025cd3555d02 (diff) | |
download | DotNetOpenAuth-e8fb7ce1481187d8799acae7efc273a265aec786.zip DotNetOpenAuth-e8fb7ce1481187d8799acae7efc273a265aec786.tar.gz DotNetOpenAuth-e8fb7ce1481187d8799acae7efc273a265aec786.tar.bz2 |
Added an HttpWebRequest extension method to authorize HTTP requests with WRAP.
-rw-r--r-- | src/DotNetOpenAuth/OAuthWrap/ClientBase.cs | 7 | ||||
-rw-r--r-- | src/DotNetOpenAuth/OAuthWrap/WrapUtilities.cs | 34 |
2 files changed, 36 insertions, 5 deletions
diff --git a/src/DotNetOpenAuth/OAuthWrap/ClientBase.cs b/src/DotNetOpenAuth/OAuthWrap/ClientBase.cs index bec86c6..b277df1 100644 --- a/src/DotNetOpenAuth/OAuthWrap/ClientBase.cs +++ b/src/DotNetOpenAuth/OAuthWrap/ClientBase.cs @@ -34,7 +34,7 @@ namespace DotNetOpenAuth.OAuthWrap { public AuthorizationServerDescription AuthorizationServer { get; private set; } /// <summary> - /// Gets the channel. + /// Gets the OAuth WRAP channel. /// </summary> /// <value>The channel.</value> public Channel Channel { get; private set; } @@ -48,10 +48,7 @@ namespace DotNetOpenAuth.OAuthWrap { public static void AuthorizeRequest(HttpWebRequest request, string accessToken) { Contract.Requires<ArgumentNullException>(request != null); Contract.Requires<ArgumentException>(!string.IsNullOrEmpty(accessToken)); - request.Headers[HttpRequestHeader.Authorization] = string.Format( - CultureInfo.InvariantCulture, - Protocol.HttpAuthorizationHeaderFormat, - accessToken); + WrapUtilities.AuthorizeWithOAuthWrap(request, accessToken); } } } diff --git a/src/DotNetOpenAuth/OAuthWrap/WrapUtilities.cs b/src/DotNetOpenAuth/OAuthWrap/WrapUtilities.cs new file mode 100644 index 0000000..5c391be --- /dev/null +++ b/src/DotNetOpenAuth/OAuthWrap/WrapUtilities.cs @@ -0,0 +1,34 @@ +//----------------------------------------------------------------------- +// <copyright file="WrapUtilities.cs" company="Andrew Arnott"> +// Copyright (c) Andrew Arnott. All rights reserved. +// </copyright> +//----------------------------------------------------------------------- + +namespace DotNetOpenAuth.OAuthWrap { + using System; + using System.Collections.Generic; + using System.Diagnostics.Contracts; + using System.Globalization; + using System.Linq; + using System.Net; + using System.Text; + + /// <summary> + /// Some common utility methods for OAuth WRAP. + /// </summary> + public static class WrapUtilities { + /// <summary> + /// Authorizes an HTTP request using an OAuth WRAP access token. + /// </summary> + /// <param name="request">The request to authorize.</param> + /// <param name="accessToken">The access token previously obtained from the Authorization Server.</param> + public static void AuthorizeWithOAuthWrap(this HttpWebRequest request, string accessToken) { + Contract.Requires<ArgumentNullException>(request != null); + Contract.Requires<ArgumentException>(!string.IsNullOrEmpty(accessToken)); + request.Headers[HttpRequestHeader.Authorization] = string.Format( + CultureInfo.InvariantCulture, + Protocol.HttpAuthorizationHeaderFormat, + accessToken); + } + } +} |