【发布时间】:2020-07-19 03:26:46
【问题描述】:
下面有当前用户的序列化程序的详细信息
serializers.py
class UserDetailSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = [
'id',
'username',
'email',
'first_name',
'last_name',
]
views.py
class UserViewSet(APIView):
def get(self, request):
serializer = UserDetailSerializer(request.user)
return Response(serializer.data)
urls.py
urlpatterns = [
path('admin/', admin.site.urls),
url(r'^user/', accounts_views.UserViewSet.as_view()),
]
转到 http://localhost:8000/user/ 会显示正确的 json/api 数据:
{
"id": 1,
"username": "stormadmin",
"email": "",
"first_name": "",
"last_name": ""
}
但是当我尝试使用 ajax 来获取数据时:
async getUser() {
const response = await fetch('http://127.0.0.1:8000'+'/user/');
const resData = await response.json();
return resData;
}
我得到了这个:
{id: null, username: ""}
我的问题是,如何通过 AJAX 调用获取我想要的数据?或者有更好的方法吗?
【问题讨论】:
-
您是否尝试过使用相同的域名 -
http://localhost:8000/user/? django使用cookies获取用户,cookie绑定域名 -
哇。这实际上有效 facepalm 请发布为答案,以便我可以将您标记为答案
标签: javascript django ajax api django-rest-framework