1+ using System ;
2+ using System . Collections . Generic ;
3+ using System . Configuration ;
4+ using System . Linq ;
5+ using System . Web ;
6+ using System . Web . UI ;
7+ using System . Web . UI . WebControls ;
8+ using WX . Api ;
9+ using WX . Model ;
10+ using WX . Model . ApiRequests ;
11+
12+ namespace WebDemo
13+ {
14+ public partial class OAuthUserInfoDemo : System . Web . UI . Page
15+ {
16+ private IApiClient m_client = new DefaultApiClient ( ) ;
17+ private AppIdentication m_appIdent = new AppIdentication (
18+ ConfigurationManager . AppSettings [ "wxappid" ] ,
19+ ConfigurationManager . AppSettings [ "wxappsecret" ] ) ;
20+
21+ protected void Page_Load ( object sender , EventArgs e )
22+ {
23+ if ( Request [ "Code" ] == null )
24+ {
25+ throw new ArgumentNullException ( "Code is null" ) ;
26+ }
27+
28+ Label1 . Text = Request [ "Code" ] ;
29+ Label6 . Text = "" ;
30+ }
31+
32+ protected void Button1_Click ( object sender , EventArgs e )
33+ {
34+ var request = new SnsOAuthAccessTokenRequest
35+ {
36+ AppID = m_appIdent . AppID ,
37+ AppSecret = m_appIdent . AppSecret ,
38+ Code = Label1 . Text
39+ } ;
40+ var response = m_client . Execute ( request ) ;
41+ if ( ! response . IsError )
42+ {
43+ Label2 . Text = response . AccessToken ;
44+ Label3 . Text = response . RefreshToken ;
45+ Label5 . Text = response . OpenId ;
46+ }
47+ else
48+ {
49+ Label6 . Text = response . ToString ( ) ;
50+ }
51+ }
52+
53+ protected void Button2_Click ( object sender , EventArgs e )
54+ {
55+ var request = new SnsOauthRefreshTokenRequest
56+ {
57+ AppID = m_appIdent . AppID ,
58+ RefreshToken = Label3 . Text
59+ } ;
60+ var response = m_client . Execute ( request ) ;
61+ if ( ! response . IsError )
62+ {
63+ Label2 . Text = response . AccessToken ;
64+ Label3 . Text = response . RefreshToken ;
65+ Label5 . Text = response . OpenId ;
66+ }
67+ else
68+ {
69+ Label6 . Text = response . ToString ( ) ;
70+ }
71+ }
72+
73+ protected void Button3_Click ( object sender , EventArgs e )
74+ {
75+ var request = new SnsUserInfoRequest
76+ {
77+ OAuthToken = Label2 . Text ,
78+ Lang = Language . CN ,
79+ OpenId = Label5 . Text
80+ } ;
81+ var response = m_client . Execute ( request ) ;
82+ if ( response . IsError )
83+ {
84+ Label6 . Text = response . ToString ( ) ;
85+ }
86+ else
87+ {
88+ Label4 . Text = response . NickName ;
89+ }
90+ }
91+ }
92+ }
0 commit comments