[ОБНОВЛЕНИЕ], как указано Фил , Boolean('false')
не работает.Я обновил код до того, что будет работать для «истина» и «ложь», но более сложная функция необходима, если вы хотите охватить все возможности.
Если ответ API точно выглядитвот так:
{
"some": "true"
}
Тогда axios
не делает ничего плохого.Для библиотеки опасно автоматически анализировать значения по своему усмотрению, просто посмотрите на , как Json.NET обрабатывает значения, которые они считают похожими на Datetime .
ЕслиПолезная нагрузка, возвращаемая API, выглядит в точности так:
{
"some" : true
}
Тогда axios
должен непосредственно проанализировать его как логическое значение.
То, что я предлагаю вам сделать, это всегда парсит значение как логическое значение, даже если оно уже равно:
let request = await Axios({...requestConfig,
url: resource, method: 'get', responseType: 'json'
});
let someValue = String(request.data.some) == "true";
Это будет работать как для Boolean("true")
, так и для Boolean(true)
.