Example #1
0
        public string AuthorizePocket(string responseCode, string redirectUri, string username, string password, ContentType type)
        {
            var buildUrl = new StringBuilder();

            buildUrl.Append(RequestAuthorizeUrl);
            buildUrl.Append("?request_token=");
            buildUrl.Append(responseCode);
            buildUrl.Append("&redirect_uri=");
            buildUrl.Append(redirectUri);

            var response = SubmitRequest(new PocketWebRequest
            {
                ContentyType  = type == ContentType.Json?ContentTypeEncodeing.JsonUtf8Encoded:ContentTypeEncodeing.FormUrlEncoded,
                RequestMethod = WebRequestMethods.Http.Get,
                Url           = buildUrl.ToString()
            });

            LoginProcess loginProcess = ParseAuthorizePage(response);

            string loginProcessUriParameters = BuildLoginProcessUri(loginProcess, username, password);

            AttemptLoginProcess(loginProcessUriParameters, type, buildUrl.ToString());

            return(response);
        }
Example #2
0
        private string BuildLoginProcessUri(LoginProcess loginProcess, string username, string password)
        {
            var parameterBuilder = new StringBuilder();

            parameterBuilder.Append("feed_id=");
            parameterBuilder.Append(username);
            parameterBuilder.Append("&password="******"&form_check=");
            parameterBuilder.Append(HttpUtility.UrlEncode(loginProcess.FormCheck));
            parameterBuilder.Append("&source=");
            parameterBuilder.Append(HttpUtility.UrlEncode(loginProcess.Source));
            parameterBuilder.Append("&route=");
            parameterBuilder.Append(HttpUtility.UrlEncode(loginProcess.Route));
            return(parameterBuilder.ToString());
        }
Example #3
0
        public LoginProcess ParseAuthorizePage(string result)
        {
            var loginProcess = new LoginProcess();

            bool foundLoginSection = false;
            var  reader            = new StringReader(result);

            while (reader.Peek() != -1)
            {
                string line = reader.ReadLine();

                if (foundLoginSection)
                {
                    if (line != null && line.Contains("type=\"hidden\""))
                    {
                        if (line.Contains("name=\"form_check\""))
                        {
                            loginProcess.FormCheck = ReviewValueFieldFromHtml(line);
                        }
                        else if (line.Contains("name=\"source\""))
                        {
                            loginProcess.Source = ReviewValueFieldFromHtml(line);
                        }
                        else if (line.Contains("name=\"route\""))
                        {
                            loginProcess.Route = ReviewValueFieldFromHtml(line);
                        }
                        else
                        {
                            continue;
                        }
                    }
                }

                if (line != null && (line.Contains("form") && line.Contains("action=\"/login_process\"")))
                {
                    foundLoginSection = true;
                }
            }

            return(loginProcess);
        }
        public LoginProcess ParseAuthorizePage(string result)
        {
            var loginProcess = new LoginProcess();

            bool foundLoginSection = false;
            var reader = new StringReader(result);
            while (reader.Peek() != -1)
            {
                string line = reader.ReadLine();

                if (foundLoginSection)
                {
                    if(line != null && line.Contains("type=\"hidden\""))
                    {
                        if (line.Contains("name=\"form_check\""))
                        {
                            loginProcess.FormCheck = ReviewValueFieldFromHtml(line);
                        }
                        else if (line.Contains("name=\"source\""))
                        {
                            loginProcess.Source = ReviewValueFieldFromHtml(line);
                        }
                        else if (line.Contains("name=\"route\""))
                        {
                            loginProcess.Route = ReviewValueFieldFromHtml(line);
                        }
                        else
                            continue;
                    }
                }

                if (line != null && (line.Contains("form") && line.Contains("action=\"/login_process\"")))
                    foundLoginSection = true;
            }

            return loginProcess;
        }
 private string BuildLoginProcessUri(LoginProcess loginProcess, string username, string password)
 {
     var parameterBuilder = new StringBuilder();
     parameterBuilder.Append("feed_id=");
     parameterBuilder.Append(username);
     parameterBuilder.Append("&password="******"&form_check=");
     parameterBuilder.Append(HttpUtility.UrlEncode(loginProcess.FormCheck));
     parameterBuilder.Append("&source=");
     parameterBuilder.Append(HttpUtility.UrlEncode(loginProcess.Source));
     parameterBuilder.Append("&route=");
     parameterBuilder.Append(HttpUtility.UrlEncode(loginProcess.Route));
     return parameterBuilder.ToString();
 }