Beispiel #1
0
        private async void Auth(string phone, string token, ListBox logList)
        {
            string         firstUrl    = "https://api.gotinder.com/v2/auth/sms/send?auth_type=sms&locale=ru";
            string         secondUrl   = "https://api.gotinder.com/v2/auth/sms/validate?auth_type=sms&locale=ru";
            string         threeUrl    = "https://api.gotinder.com/v2/auth/login/sms?locale=ru";
            string         phoneNumber = phone;
            HttpWebRequest request     = WebRequest.Create(threeUrl) as HttpWebRequest;

            request.Method      = "POST";
            request.ContentType = "application/json";
            request.UserAgent   = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36";
            CookieContainer cookieContainer = new CookieContainer();
            // string login = "******";
            // string password = "******";
            RootDataThree dataFirstRequest = new RootDataThree();

            dataFirstRequest.phone_number  = phoneNumber;
            dataFirstRequest.refresh_token = token;
            var firstJsonData = Newtonsoft.Json.JsonConvert.SerializeObject(dataFirstRequest);

            request.CookieContainer = cookieContainer;
            using (StreamWriter writer = new StreamWriter(await request.GetRequestStreamAsync()))
            {
                await writer.WriteAsync(firstJsonData);
            }
            HttpWebResponse response = null;

            try
            {
                response = await request.GetResponseAsync() as HttpWebResponse;

                string content = string.Empty;
                using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                {
                    content = await reader.ReadToEndAsync();

                    reader.Close();
                }
                response.Close();
                response.Dispose();
                RootMetaData rootMetaData = JsonConvert.DeserializeObject <RootMetaData>(content);
                ApiToken = rootMetaData.Data.api_token;
                accountInformation.SaveTokenToFile(phoneNumber, ApiToken);
                logList.Items.Add($"Загружен в файл: {phoneNumber} - {ApiToken}");
            }
            catch (WebException webException)
            {
                MessageBox.Show(webException.Message);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
            finally
            {
                response.Close();
                response.Dispose();
            }
        }
Beispiel #2
0
        public async void SmsValidate(string phoneNumberText, TextBox otpCode, ListBox logList)
        {
            string         firstUrl    = "https://api.gotinder.com/v2/auth/sms/send?auth_type=sms&locale=ru";
            string         secondUrl   = "https://api.gotinder.com/v2/auth/sms/validate?auth_type=sms&locale=ru";
            string         threeUrl    = "https://api.gotinder.com/v2/auth/login/sms?locale=ru";
            string         phoneNumber = phoneNumberText;
            HttpWebRequest request     = WebRequest.Create(secondUrl) as HttpWebRequest;

            request.Method      = "POST";
            request.ContentType = "application/json";
            request.UserAgent   = "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36";
            CookieContainer cookieContainer = new CookieContainer();
            // string login = "******";
            // string password = "******";
            RootDataSecond rootDataSecond = new RootDataSecond();

            rootDataSecond.otp_code     = otpCode.Text;
            rootDataSecond.phone_number = phoneNumber;
            rootDataSecond.is_update    = false;
            var firstJsonData = Newtonsoft.Json.JsonConvert.SerializeObject(rootDataSecond);

            // string data = $"login={login}&password={password}&s_post=QbAido4SpJuI9cct54vSwPPUxZbwn8QU&level=false";
            // byte[] dataBytes = Encoding.UTF8.GetBytes(firstJsonData);
            //  request.ContentLength = dataBytes.Length;
            request.CookieContainer = cookieContainer;
            using (StreamWriter writer = new StreamWriter(await request.GetRequestStreamAsync()))
            {
                // await writer.WriteAsync(dataBytes, 0, dataBytes.Length);
                await writer.WriteAsync(firstJsonData);
            }
            HttpWebResponse response = null;

            try
            {
                response = await request.GetResponseAsync() as HttpWebResponse;

                string content = "";
                using (StreamReader reader = new StreamReader(response.GetResponseStream()))
                {
                    content = await reader.ReadToEndAsync();

                    reader.Close();
                }
                RootMetaData deserializeObject = Newtonsoft.Json.JsonConvert.DeserializeObject <RootMetaData>(content);
                string       refreshToken      = deserializeObject.Data.refresh_token;
                logList.Items.Add($"[{DateTime.Now}]: Debug: {content}");
                response.Close();
                response.Dispose();
                Auth(phoneNumberText, refreshToken, logList);
            }
            catch (WebException webException)
            {
                MessageBox.Show(webException.Message);
            }
            catch (Exception exception)
            {
                MessageBox.Show(exception.Message);
            }
            finally
            {
                response.Close();
                response.Dispose();
            }
        }