مرجع تخصصی برنامه نویسان

بزرگترین انجمن برنامه نویسان فارسی زبان

چگونگي ارسال اطلاعات به يك سايت با استفاده از پروتكل https از طريق كنترلر اينترنت VB6

ﺳﻪ شنبه, 01 بهمن 1398 10:30

چگونگي ارسال اطلاعات به يك سايت با استفاده از پروتكل https از طريق كنترلر اينترنت VB6

با سلام به دوستان برنامه نويس

بنده يك برنامه به زبان vb6  نوشته ام كه يك سري اطلاعات را به يك سازمان مي فرستد و سپس يك كد رهگيري دريافت مي كند.اين  كار تا به حال  با استفاده از كنترلر اينترنت وبا پروتكل http انجام مي شد،

بعنوان مثال  اطلاعات مورد نياز سازمان را در يك استرينگ به نام strurl ذخيره ميكنم  و اين رشته را به آدرس مربوطه به شكل ذيل ارسال مي كنم (inet1  نام كنترلر بر روي فرم است)

"...&strURL="http://rmc.ir/getcode.ashx/?& name=ali&famil=hasani

result = Inet1.OpenURL(str_URL, icString)

اما  جديدا  سازمان مربوطه مي خواهد ارسال اطلاعات بر اساس پروتكل امن https ‌صورت گيرد.من با افزودن S  به آخر http  بضورت زير عمل كردم

"...&strURL="https://rmc.ir/getcode.ashx/?& name=ali&famil=hasani

  Inet1.Protocol = icHTTPS

result = Inet1.OpenURL(str_URL, icString)

اما با اين كار اطلاعات ارسال نمي شود و خطا ميدهد!

ميخواستم ببينم چه تغييراتي بايد داده شود كه ارسال اطلاعات بصورت امن و با استفاده از https ‌به سايت مربوطه ارسال شود؟

با سپاس از دوستان گرامي

چهارشنبه, 02 بهمن 1398 12:59

منظور شما با استفاده از TLS هست گویا

که لازمش اینه 

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;
            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(apiUrl);
                client.DefaultRequestHeaders.Accept.Clear();
                var w = client.PostAsJsonAsync(apiUrl, value);
                w.Wait();
                HttpResponseMessage response = w.Result;
                if (response.IsSuccessStatusCode)
                {
                    var result = response.Content.ReadAsAsync<T>();
                    result.Wait();
                    return result.Result;
                }
                return default(T);
            }

این برای محیط وب هستش حالا تبدیلش به چیزی که میخوای رو ...

مهمترین قسمتش اینه که باید .net 4.6 به بالا داشته باشی رو سیستمت احتمالا

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;

ارسال پاسخ برای این تاپیک

ارسال پاسخ مخصوص اعضا سایت می باشد ! میتوانید با حساب کاربری خود وارد سایت شده یا ثبت نام کنید