Код: Выделить всё
HttpClient apiP21 = new();
apiP21.DefaultRequestHeaders.Add("client_secret", "thesecret");
apiP21.DefaultRequestHeaders.Add("grant_type", "client_credentials");
apiP21.DefaultRequestHeaders.Add("username", "theuser");
var tokenRequestDataContent = new StringContent("", Encoding.UTF8, "application/xml");
var tokenResponse = apiP21.PostAsync("theendpoint", tokenRequestDataContent).Result;
if (!tokenResponse.IsSuccessStatusCode)
{
return BadRequest("Could not get Security Token");
}
string tokenResponseRaw = tokenResponse.Content.ReadAsStringAsync().Result;
XmlDocument tokenResponseXML = new();
tokenResponseXML.LoadXml(tokenResponseRaw);
XmlNamespaceManager nsmgr = new(tokenResponseXML.NameTable);
nsmgr.AddNamespace("act", "http://distributionsuite.activant.com");
XmlNode accessTokenNode = tokenResponseXML.SelectSingleNode("//act:AccessToken", nsmgr)!;
string accessToken = accessTokenNode?.InnerText!;
Вот выходные данные визуализатора XML из tokenResponseRaw (я опустил сам токен). Мне просто нужно получить токен безопасности. Что я делаю не так?
Код: Выделить всё
thetoken
Bearer
theuser
86400
/api;/data;/odata:inv_mast,inv_loc,users,roles,pricing_library,inv_sub,serial_number
d0232f06-69fb-499d-bf41-4d8e6ae9b6c2
7
Подробнее здесь: https://stackoverflow.com/questions/790 ... arsing-xml
Мобильная версия