Javascript 未登录Django/vue时,网页上是否显示经过身份验证的数据
我有一个使用Django和Nuxt js的应用程序,它使用express sessions和redis来存储会话令牌 我正在尝试添加一个包含来自后端的数据的页面,该页面仅在用户经过身份验证后才会显示。 由于某种原因,它不起作用。即使在多次刷新后,当我注销时也会显示数据 这是我的密码 Django/Views.pyJavascript 未登录Django/vue时,网页上是否显示经过身份验证的数据,javascript,django,vue.js,django-rest-framework,nuxt.js,Javascript,Django,Vue.js,Django Rest Framework,Nuxt.js,我有一个使用Django和Nuxt js的应用程序,它使用express sessions和redis来存储会话令牌 我正在尝试添加一个包含来自后端的数据的页面,该页面仅在用户经过身份验证后才会显示。 由于某种原因,它不起作用。即使在多次刷新后,当我注销时也会显示数据 这是我的密码 Django/Views.py class OrdersViewSet(mixins.ListModelMixin, viewsets.GenericViewSet,
class OrdersViewSet(mixins.ListModelMixin,
viewsets.GenericViewSet,
mixins.RetrieveModelMixin
):
queryset = Orders.objects.all().order_by('-time_stamp')
serializer_class = OrdersSerializer
permission_classes= [permissions.IsAuthenticated]
REST_FRAMEWORK = {
"DEFAULT_AUTHENTICATION_CLASSES": (
"rest_framework.authentication.BasicAuthentication",
"rest_framework.authentication.SessionAuthentication",
"rest_framework.authentication.TokenAuthentication",
),
"DEFAULT_PERMISSION_CLASSES": (
"rest_framework.permissions.IsAuthenticated",
),
"DEFAULT_PAGINATION_CLASS": "rest_framework.pagination.PageNumberPagination",
"PAGE_SIZE": 100,
}
webpage.hmtl
<template>
<div class="course-list-row">
<table>
<thead id="header-fixed">
<th scope="col">Time Stamp</th>
</thead>
</table>
<tbody>
<tr v-for="row in orders" :key="row.id">
<td style="width:5px">{{ row.time_stamp }}</td>
<td style="width:5px">{{ row.event_name }}</td>
</tr>
</tbody>
</div>
</template>
<script>
export default {
async asyncData({ app }) {
try {
const res = await app.$axios.get("api/orders/");
return {
orders: res.data.results,
error: false
};
} catch (e) {
console.log("error", e);
return {
orders: [],
error: true
};
}
}
};
</script>
Djangosettings.py
class OrdersViewSet(mixins.ListModelMixin,
viewsets.GenericViewSet,
mixins.RetrieveModelMixin
):
queryset = Orders.objects.all().order_by('-time_stamp')
serializer_class = OrdersSerializer
permission_classes= [permissions.IsAuthenticated]
REST_FRAMEWORK = {
"DEFAULT_AUTHENTICATION_CLASSES": (
"rest_framework.authentication.BasicAuthentication",
"rest_framework.authentication.SessionAuthentication",
"rest_framework.authentication.TokenAuthentication",
),
"DEFAULT_PERMISSION_CLASSES": (
"rest_framework.permissions.IsAuthenticated",
),
"DEFAULT_PAGINATION_CLASS": "rest_framework.pagination.PageNumberPagination",
"PAGE_SIZE": 100,
}
您如何注销?我正在使用网页上的注销按钮注销。该项目是与docker,当我重建它,它是一样的issue@IainShelvington我懂了。我有一个自由职业者在这个项目上工作,所以他可能会做出一些改变:(在注销时,您似乎没有删除
req.session.authToken
?可能这仍然是与请求一起发送的