예제 #1
0
        private void btnPost_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                var request = (HttpWebRequest)WebRequest.Create("https://api.pinterest.com/v1/pins/?access_token=" + tokenResponse);

                string postPin = string.Format("board={0}&note={1}&image_url={2}", 440649213480166546, textPin.Text, "https://i.pinimg.com/60x60_RS/c4/ce/43/c4ce43b844e6b059145fba4d82f14678.jpg");
                var    pin     = Encoding.ASCII.GetBytes(postPin);

                request.Method      = "POST";
                request.ContentType = "application/x-www-form-urlencoded";

                byte[] bytes = Encoding.ASCII.GetBytes(postPin);
                request.ContentLength = bytes.Length;
                using (var stream = request.GetRequestStream())
                {
                    stream.Write(bytes, 0, bytes.Length);
                }

                var response       = (HttpWebResponse)request.GetResponse();
                var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
                var x = AuthResponse.get(responseString);
                if (x != null)
                {
                    MessageBox.Show("Pin Successful");
                    textPin.Clear();
                }
            }
            catch (Exception ex)
            {
                textPin.Text = ex.ToString();
            }
        }
        public static AuthResponse Exchange(string authCode, string clientid, string secret, string redirectUri)
        {
            var request = (HttpWebRequest)WebRequest.Create("https://api.pinterest.com/v1/oauth/token");

            string postData = string.Format("code={0}&redirect_uri={1}&client_id={2}&client_secret={3}&scope=&grant_type=authorization_code", authCode, redirectUri, clientid, secret);
            var    data     = Encoding.ASCII.GetBytes(postData);

            request.Method        = "POST";
            request.ContentType   = "application/x-www-form-urlencoded";
            request.ContentLength = data.Length;

            using (var stream = request.GetRequestStream())
            {
                stream.Write(data, 0, data.Length);
            }

            var response       = (HttpWebResponse)request.GetResponse();
            var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
            var x = AuthResponse.get(responseString);

            x.clientId = clientid;
            x.secret   = secret;

            return(x);
        }