好的,我有这个json对象。我将其添加到本地存储
.net和React。
localStorage.setItem('user', JSON.stringify(user));
我需要提取auth_token:
"{\n \"id\": \"24625a45-5079-46be-8241-481661d747e9\",\n \"auth_token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ0ZXN0QGdtYWlsLmNvbSIsImp0aSI6IjdkMjVlNjRmLTM1YzQtNDMzMi04NWQyLTNhYzlhNTFiZTBiYyIsImlhdCI6MTUzNDAxODUxMSwicm9sIjoiYXBpX2FjY2VzcyIsImlkIjoiMjQ2MjVhNDUtNTA3OS00NmJlLTgyNDEtNDgxNjYxZDc0N2U5IiwibmJmIjoxNTM0MDE4NTEwLCJleHAiOjE1MzQwNDAxMTAsImlzcyI6IndlYkFwaSIsImF1ZCI6Imh0dHA6Ly9sb2NhbGhvc3Q6NTAwMC8ifQ.Gmtft6TGYxFkc9r0GHqr7ed4ntZwa3kVfb2WJ9M8aBI\",\n \"expires_in\": 21600\n}"
我如何提取它?
我使用user.auth_token
。这是行不通的。
刷新,任何人都知道如何解决此类问题。
这是解决方法:
export function authHeader() {
// return authorization header with jwt token
const user = JSON.parse(localStorage.getItem('user'));
const userparsed = JSON.parse(user)
return { 'Authorization': 'Bearer ' + userparsed.auth_token };
}
答案 0 :(得分:1)
当您从localStorage读回它时,您将需要像这样将字符串解析为JSON
const stringFromLocalStorage = "{\n \"id\": \"24625a45-5079-46be-8241-481661d747e9\",\n \"auth_token\": \"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ0ZXN0QGdtYWlsLmNvbSIsImp0aSI6IjdkMjVlNjRmLTM1YzQtNDMzMi04NWQyLTNhYzlhNTFiZTBiYyIsImlhdCI6MTUzNDAxODUxMSwicm9sIjoiYXBpX2FjY2VzcyIsImlkIjoiMjQ2MjVhNDUtNTA3OS00NmJlLTgyNDEtNDgxNjYxZDc0N2U5IiwibmJmIjoxNTM0MDE4NTEwLCJleHAiOjE1MzQwNDAxMTAsImlzcyI6IndlYkFwaSIsImF1ZCI6Imh0dHA6Ly9sb2NhbGhvc3Q6NTAwMC8ifQ.Gmtft6TGYxFkc9r0GHqr7ed4ntZwa3kVfb2WJ9M8aBI\",\n \"expires_in\": 21600\n}";
const user = JSON.parse(stringFromLocalStorage);
console.log(user.auth_token);
就您而言,
localStorage.setItem('user', JSON.stringify(user));
const fetchedUser = JSON.parse(localStorage.getItem('user'));
console.log('Auth Token', fetchedUser.auth_token);