Я работаю над приложением ASP.NET и отправляю запрос (REST API) в мою библиотеку классов.У меня есть тестовое приложение (Консольное приложение), в котором тот же код работает без ошибок, но не работает в приложении ASP.NET нашего клиента.
В тестовом приложении я делаю следующее:
using (HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, URL))
{
ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
//headers
request.Headers.Add("Authorization", "Bearer " + tokenResponse.AccessToken);
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
RequestObject createdRequest = CreateRequest();
string json = JsonConvert.SerializeObject(createdRequest);
StringContent stringContent =
new StringContent(
json,
Encoding.UTF8,
"application/json");
//body (content) of the request
request.Content = stringContent;
//sending the request through a POST method asynchronously
using (HttpResponseMessage httpResponse = await client.SendAsync(request))
{
string stringContents = await httpResponse.Content.ReadAsStringAsync();
}
}
Я выполняю тот же фрагмент кода в приложении ASP.NET, но получаю код состояния BadRequest
и на string stringContents = await httpResponse.Content.ReadAsStringAsync();
он говорит: предоставленный ввод недопустим как JSON-строка и не может быть проанализирован.
Следующий объект JSON - это то, что я распечатываю с Console.WriteLine();
(я оставил несколько свойств из-за конфиденциальности):
{
"MainObject":[
{
"Object1":{
"prop1":"value",
"prop2":"value",
"prop3":"value",
"prop4":"value",
"prop5":"value",
"prop6":"2018-09-20"
},
"Object2":{
"prop1":"2822",
"prop2":null,
"prop3":100.0,
"prop4":"value",
"prop5":"value",
"prop6":"value",
"prop7":"value",
"prop8":null,
"prop9":null,
"prop10":null,
"prop12":null,
"prop13":null,
"prop14":null,
"prop15":2,
"prop16":0.0,
"prop17":0.0,
"prop18":"value"
}
}
]
}
Может кто-нибудь увидеть, что я сделал неправильно