diff options
author | Andrew Arnott <andrewarnott@gmail.com> | 2011-04-05 20:40:13 -0700 |
---|---|---|
committer | Andrew Arnott <andrewarnott@gmail.com> | 2011-04-05 20:40:13 -0700 |
commit | 16782ca961bb529f1f938eb2cc1d3c20d6cb62df (patch) | |
tree | 96ce66578aa09c33c7a2af67f66cc661a86d9e21 /samples | |
parent | fbeec3716432f8d8ec489d1eaf70a8514c39eb3a (diff) | |
download | DotNetOpenAuth-16782ca961bb529f1f938eb2cc1d3c20d6cb62df.zip DotNetOpenAuth-16782ca961bb529f1f938eb2cc1d3c20d6cb62df.tar.gz DotNetOpenAuth-16782ca961bb529f1f938eb2cc1d3c20d6cb62df.tar.bz2 |
Added 2-legged OAuth consumer sample.
Diffstat (limited to 'samples')
-rw-r--r-- | samples/OAuthConsumer/GoogleApps2Legged.aspx | 25 | ||||
-rw-r--r-- | samples/OAuthConsumer/GoogleApps2Legged.aspx.cs | 36 | ||||
-rw-r--r-- | samples/OAuthConsumer/GoogleApps2Legged.aspx.designer.cs | 42 | ||||
-rw-r--r-- | samples/OAuthConsumer/OAuthConsumer.csproj | 8 |
4 files changed, 111 insertions, 0 deletions
diff --git a/samples/OAuthConsumer/GoogleApps2Legged.aspx b/samples/OAuthConsumer/GoogleApps2Legged.aspx new file mode 100644 index 0000000..cd9d9a1 --- /dev/null +++ b/samples/OAuthConsumer/GoogleApps2Legged.aspx @@ -0,0 +1,25 @@ +<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/MasterPage.master"CodeBehind="GoogleApps2Legged.aspx.cs" Inherits="OAuthConsumer.GoogleApps2Legged" %> + +<asp:Content ID="Content2" ContentPlaceHolderID="Body" runat="Server"> + <asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0"> + <asp:View runat="server"> + <h2>Google setup</h2> + <p>A Google client app must be endorsed by a Google user. </p> + <ol> + <li><a target="_blank" href="https://www.google.com/accounts/ManageDomains">Visit Google + and create a client app</a>. </li> + <li>Modify your web.config file to include your consumer key and consumer secret. + </li> + </ol> + </asp:View> + <asp:View runat="server"> + <h2>Updates</h2> + <p>Ok, Google has authorized us to download your contacts. Click 'Get address book' + to download the first 5 contacts to this sample. Notice how we never asked you + for your Google username or password. </p> + <asp:Button ID="getAddressBookButton" runat="server" OnClick="getAddressBookButton_Click" + Text="Get address book" /> + <asp:PlaceHolder ID="resultsPlaceholder" runat="server" /> + </asp:View> + </asp:MultiView> +</asp:Content> diff --git a/samples/OAuthConsumer/GoogleApps2Legged.aspx.cs b/samples/OAuthConsumer/GoogleApps2Legged.aspx.cs new file mode 100644 index 0000000..217a09c --- /dev/null +++ b/samples/OAuthConsumer/GoogleApps2Legged.aspx.cs @@ -0,0 +1,36 @@ +namespace OAuthConsumer { + using System; + using System.Collections.Generic; + using System.Linq; + using System.Web; + using System.Web.UI; + using System.Web.UI.WebControls; + using DotNetOpenAuth.ApplicationBlock; + using System.Configuration; + using DotNetOpenAuth.OAuth; + using DotNetOpenAuth.OAuth.Messages; + + public partial class GoogleApps2Legged : System.Web.UI.Page { + private InMemoryTokenManager TokenManager { + get { + var tokenManager = (InMemoryTokenManager)Application["GoogleTokenManager"]; + if (tokenManager == null) { + string consumerKey = ConfigurationManager.AppSettings["googleConsumerKey"]; + string consumerSecret = ConfigurationManager.AppSettings["googleConsumerSecret"]; + if (!string.IsNullOrEmpty(consumerKey)) { + tokenManager = new InMemoryTokenManager(consumerKey, consumerSecret); + Application["GoogleTokenManager"] = tokenManager; + } + } + + return tokenManager; + } + } + + protected void Page_Load(object sender, EventArgs e) { + var google = new WebConsumer(GoogleConsumer.ServiceDescription, this.TokenManager); + string accessToken = google.RequestNewClientAccount(); + string tokenSecret = google.TokenManager.GetTokenSecret(accessToken); + } + } +}
\ No newline at end of file diff --git a/samples/OAuthConsumer/GoogleApps2Legged.aspx.designer.cs b/samples/OAuthConsumer/GoogleApps2Legged.aspx.designer.cs new file mode 100644 index 0000000..f952937 --- /dev/null +++ b/samples/OAuthConsumer/GoogleApps2Legged.aspx.designer.cs @@ -0,0 +1,42 @@ +//------------------------------------------------------------------------------ +// <auto-generated> +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// </auto-generated> +//------------------------------------------------------------------------------ + +namespace OAuthConsumer { + + + public partial class GoogleApps2Legged { + + /// <summary> + /// MultiView1 control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::System.Web.UI.WebControls.MultiView MultiView1; + + /// <summary> + /// getAddressBookButton control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::System.Web.UI.WebControls.Button getAddressBookButton; + + /// <summary> + /// resultsPlaceholder control. + /// </summary> + /// <remarks> + /// Auto-generated field. + /// To modify move field declaration from designer file to code-behind file. + /// </remarks> + protected global::System.Web.UI.WebControls.PlaceHolder resultsPlaceholder; + } +} diff --git a/samples/OAuthConsumer/OAuthConsumer.csproj b/samples/OAuthConsumer/OAuthConsumer.csproj index 284b8e9..8e80ad4 100644 --- a/samples/OAuthConsumer/OAuthConsumer.csproj +++ b/samples/OAuthConsumer/OAuthConsumer.csproj @@ -61,6 +61,7 @@ <Content Include="favicon.ico" /> <Content Include="Global.asax" /> <Content Include="GoogleAddressBook.aspx" /> + <Content Include="GoogleApps2Legged.aspx" /> <Content Include="images\Sign-in-with-Twitter-darker.png" /> <Content Include="SampleWcf.aspx" /> <Content Include="Yammer.aspx" /> @@ -92,6 +93,13 @@ <Compile Include="GoogleAddressBook.aspx.designer.cs"> <DependentUpon>GoogleAddressBook.aspx</DependentUpon> </Compile> + <Compile Include="GoogleApps2Legged.aspx.cs"> + <DependentUpon>GoogleApps2Legged.aspx</DependentUpon> + <SubType>ASPXCodeBehind</SubType> + </Compile> + <Compile Include="GoogleApps2Legged.aspx.designer.cs"> + <DependentUpon>GoogleApps2Legged.aspx</DependentUpon> + </Compile> <Compile Include="SampleWcf.aspx.cs"> <DependentUpon>SampleWcf.aspx</DependentUpon> <SubType>ASPXCodeBehind</SubType> |