Я могу сделать GET с похожим кодом и токеном на предъявителя, но, похоже, не могу выполнить POST.
Когда я копирую / вставляю Json, URL и токен на предъявителя в Почтальон, он отлично работает.Но при выполнении этого из C # я получаю эту ошибку:
"StatusCode: 400, ReasonPhrase: 'Bad Request', Версия: 1.1, Content: System.Net.Http.StreamContent, Заголовки: {Кодирование передачи: chunked Соединение: keep-alive Expect-CT: max-age = 604800, report-uri = "https://report -uri.cloudflare.com / cdn-cgi / beacon / wait-ct" CF-RAY: 4c190ad8ad786539-SYD Дата: среда, 03 апреля 2019 г. 06:38:54 GMT Set-Cookie: __cfduid = dc0232e99fa0fefc0bd728258229dd5d51554273534; истекает = чт, 02-апр-20 06:38:54 GMT; путь = /; домен = .paymentsapi.io;HttpOnly; защищенный сервер: cloudflare X-Powered-By: ASP.NET Content-Type: application / json; charset = utf-8} "
Может кто-нибудь увидеть, что я делаю не так?
Заранее спасибо.
JsonSerializerSettings jss = new JsonSerializerSettings();
string strValue = JsonConvert.SerializeObject(TestMaster, jss);
lblJSon.Text = strValue; // This Json is valid
ByteArrayContent bytecontent = new ByteArrayContent(System.Text.Encoding.UTF8.GetBytes(strValue));
bytecontent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
string AccessToken = lblToken.Text;
HttpClient tRequest = new HttpClient();
tRequest.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AccessToken);
Task<HttpResponseMessage> getTask = tRequest.PostAsJsonAsync(new Uri(strURL).ToString(), bytecontent);
HttpResponseMessage urlContents = await getTask;
Console.WriteLine("urlContents.ToString");
lblEDDR.Text = urlContents.ToString();