Задать вопрос

Как сделать через rtk query проверку bearer токена?

import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';

export const cartApi = createApi({
	baseQuery: fetchBaseQuery({ baseUrl: 'http://localhost:5000/api', }),
	endpoints: (builder) => ({
		addToCart: builder.mutation({
			query: (item) => ({
				url: '/cart/add',
				method: 'POST',
				body: item,
				
			}),
		}),
		
	}),
	
	middleware: (getDefaultMiddleware) =>
		getDefaultMiddleware().concat((req, next) => {
			const token = JSON.parse(localStorage.getItem('data')).user;
			try {
				req.headers.set('Authorization', `Bearer ${token}`);
				return next(req);
			} catch (error) {
				console.error(error);
				throw new Error('Invalid token');
			}
		}),
});

export const { useAddToCartMutation } = cartApi;

через postman все работает, а тут я не могу разобраться как сделать помогите пожалуйста
router.post("/cart/add",authMiddleware,cartController.addToCart) - чтобы добавить товар в корзину пользователь должен быть зарегистрирован, в postman я вставляю токен и он мне возвращает то что нужно, а тут ошибка что пользователь не авторизован.
Пробовал prepareHeaders но тоже не помогло(и я не понял как им пользоваться)
Помогите пожалуйста:(Заранее спасибо)
  • Вопрос задан
  • 409 просмотров
Подписаться 3 Средний Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы