如何在axios实例上使用nuxt auth

时间:2020-09-08 13:07:39

标签: axios nuxt.js

我尝试将nuxt auth模块与服务和axios实例一起使用。

nuxt.config.js

axios: {
        baseURL: "..."
  }
auth: {
        strategies: {
            local: {
                token: {
                    property: 'access_token',
                    type: 'Bearer'
                },
                user: {
                    property: 'username',
                },
                endpoints: {
                    login: { url: '/authapi/api/account', method: 'post' }
                    user: false
                }
            }
        }
    }

使用$ auth.loginWith()进行身份验证可以很好地工作,我获得了一个access_token。然后我尝试创建一个axios实例

export let catalogApiClient = axios.create({
    baseURL: "...",
    withCredentials: true,
    headers: {
        Accept: 'application/json',
        'Content-Type': 'application/json'
    }
});

并在我的brandService.js中使用它

import { catalogApiClient } from '@/plugins/axios';

export default {
    getBrands() {
        return catalogApiClient.get("brands");
    }
}

当我尝试在品牌页面上的获取挂钩中使用该服务时,会收到HTTP 401。

import brandsService from "~/services/catalog/brandsService";

export default {
    async fetch({error}) {
        try {
          const response = await brandsService.getBrands();

        }catch (e) {
          console.log(e);
        }
    }

}

0 个答案:

没有答案