Open belvision2 opened 2 months ago
Проверьте эту часть кода, кажется Вы используете комментарии внутри json строки, соответственно сам json будет не валидный.
var requestBody = @"
[
{
""id"": ""3104065001"", // ID вашего товара
""price"": ""10.5"", // Новая цена
""currency"": ""BYN"" // Валюта
}
]
";
Попробуйте так
var requestBody = @"
[
{
""id"": ""3104065001"",
""price"": ""10.5"",
""currency"": ""BYN""
}
]
";
`var url = "https://b2bapi.onliner.by/pricelists"; // URL для обновления прайс-листа var token = project.Variables["token"].Value; // Используем токен, полученный ранее, из переменной
// Формируем тело запроса для обновления только цены var requestBody = @" [ { ""id"": ""3104065001"", // ID вашего товара ""price"": ""10.5"", // Новая цена ""currency"": ""BYN"" // Валюта } ] ";
var request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url); request.Method = "PATCH"; request.Headers["Authorization"] = "Bearer " + token; // Используем Bearer токен для авторизации request.Accept = "application/json"; // Устанавливаем заголовок Accept для ожидания JSON-ответа request.ContentType = "application/json"; // Устанавливаем Content-Type для передачи данных в формате JSON
try { // Преобразуем тело запроса в байты и отправляем using (var streamWriter = new System.IO.StreamWriter(request.GetRequestStream())) { streamWriter.Write(requestBody); }
} catch (System.Net.WebException ex) { if (ex.Response != null) { using (var reader = new System.IO.StreamReader(ex.Response.GetResponseStream())) { var errorResponse = reader.ReadToEnd(); project.SendErrorToLog($"Error: {ex.Message} - Response: {errorResponse}", true); project.Variables["response"].Value = $"Error: {ex.Message} - Response: {errorResponse}"; } } else { project.SendErrorToLog($"Error: {ex.Message} - No response received.", true); project.Variables["response"].Value = $"Error: {ex.Message} - No response received."; } } `