Я получаю это сообщение при запросе WebClient к API в C# с использованием метода GET. Я что-то пропустил в своем коде? но когда я использую метод POST, он показывает тот же результат, когда я тестирую его на PostMan, что является ошибкой, потому что POST не является методом для использования в этой ссылке
Вот мой код.
[WebMethod]
public string HelloWorld()
{
string module = "/heartbeat";
string method = "GET";
string link = sandboxURL;
ServicePointManager.SecurityProtocol = (SecurityProtocolType)3072; // 3072 is SecurityProtocol.Tls12
System.Net.ServicePointManager.ServerCertificateValidationCallback = delegate (object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return true; };
var response = "";
string body = "";
var _link = link + module;
using (var client = new WebClient())
{
try
{
client.Headers.Add("Content-Type:application/json");
client.Headers.Add("Authorization", "Bearer "+ JWTToken);
//var url = new Uri(_link);
response = client.UploadString(_link, method, body);
}
catch(WebException ex)
{
if (ex.Status == WebExceptionStatus.ProtocolError)
{
HttpWebResponse wrsp = (HttpWebResponse)ex.Response;
var statusCode = (int)wrsp.StatusCode;
var msg = wrsp.StatusDescription;
Stream stream = wrsp.GetResponseStream();
byte[] data = new byte[4096];
int read;
StringBuilder sb = new StringBuilder();
while ((read = stream.Read(data, 0, data.Length)) > 0)
{
sb.Append(ASCIIEncoding.ASCII.GetString(data));
}
}
}
}
return response;
}