Здравствуйте! У меня возникла проблема, над которой бьюсь уже много времени! Хочу отправить API запрос на сервис Guesty (ссылка на документацию:
https://docs.guesty.com/#introduction), и получить JSON.
string address = "https://api.guesty.com/api/v2/" + path + "?skip=" + sk + "&limit=100";
string Storage = "*****" + storage + ".json";
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(address);
webRequest.KeepAlive = false;
webRequest.ProtocolVersion = HttpVersion.Version11;
ServicePointManager.Expect100Continue = false;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3 | SecurityProtocolType.Tls11; // здесь пробовал все возможные комбинации, в том числе SecurityProtocolType.Tls и SecurityProtocolType.SystemDefault
webRequest.Method = "GET";
webRequest.ContentType = "application/json";
webRequest.ContentLength = 0;
string autorization = extension.GuestyKeyAPI + ":" + extension.GuestySecret; //extension - это то, что приходит из полей формы
byte[] binaryAuthorization = Encoding.UTF8.GetBytes(autorization);
autorization = Convert.ToBase64String(binaryAuthorization);
autorization = "Basic " + autorization;
webRequest.Headers.Add("Authorization", autorization);
using (WebResponse response = (HttpWebResponse)webRequest.GetResponse()) // Здесь собственно и появляется сообщение об ошибке
{
using (StreamReader reader = new StreamReader(response.GetResponseStream()))
{
using (StreamWriter writer = new StreamWriter(Storage))
{
string s = reader.ReadToEnd();
writer.WriteLine(s);
reader.Close();
writer.Close();
}
}
}
string jsonString = File.ReadAllText(Storage);
return jsonString;
Но самое раздражающее не это, если нажать на Continue в VS, затем повторно нажать на Отправить в форме, то всё неожиданно срабатывает, JSON приходит.
Также проверил на другом компе, там такая же ситуация (все антивирусы отключили).
Также пробовали использовать HttpClient, но ошибка таже. Как решить эту проблему?
Заранее, спасибо за любую помощь!