Насколько я понимаю (из комментариев ОП), ответ возвращается в виде строки, подобной этой: authResp = '{"redirectUrl":"http:\/\/lumoslocal.heymath.com"}, {"status":"SUCCESS"}'
Технически это недопустимо JSON
как один большой кусок, вы получитеошибка (проверьте ее ниже)
JSON.parse('{"redirectUrl":"http:\/\/lumoslocal.heymath.com"}, {"status":"SUCCESS"}')
Чтобы успешно проанализировать данные (и в конечном итоге получить данные redirectUrl
), выполните следующие действия:
- разделите строку запятой
","
символ - синтаксический анализ «первого
JSON
элемента» - перенаправления на извлеченный redirectUrl
Вот код для каждого шага:
authResp = '{"redirectUrl":"http:\/\/lumoslocal.heymath.com"}, {"status":"SUCCESS"}';
// 1. split the string with a comma character:
let authArr = authResp.split(',');
// 2. parse the first JSON element:
let redirectObj = JSON.parse(authArr[0]);
// 3. redirect to extracted redirectUrl
window.location.href = redirectObj.redirectUrl;
Или, если вы хотите разобрать всю строку в массив JSON
объектов, вы можете сделать это:
authResp = '{"redirectUrl":"http:\/\/lumoslocal.heymath.com"}, {"status":"SUCCESS"}';
// create array of json strings, then parse each into separate array elements
authArr = authResp.split(',').map(e => JSON.parse(e));
// Finally, follow @JackBashford's code:
window.location.href = authArr.find(e => e.redirectUrl).redirectUrl;