首页 > 解决方案 > 带有客户端验证的 Django REST 框架

问题描述

我有很多问题,所以我要把我想做的事情背景化。

我正在后端创建一个带有 rest_api 的 Django 聊天应用程序,最终将与 websocket 一起成为一个实时网站。

我正在实施的第一个功能是:

在我的 api/models.py 中:

class Room(models.Model):
  name = models.CharField(max_length=64, blank=False)
  host = models.ForeignKey(User, on_delete=models.CASCADE, blank=False)

  def __str__(self):
    return self.name

我为该模型创建了一个序列化程序并遵循 APIView:

class RoomView(ListCreateAPIView):
  queryset = Room.objects.all()
  serializer_class = RoomSerializer

指向以下网址:

app_name = 'api'
urlpatterns = [
  path('room/', views.RoomView.as_view(), name='index'),
]

我的索引html

我有检查输入的房间是否已经存在的功能,如果存在将重定向到该房间,如果不存在,则应向我的 api 发送 POST 请求,返回并重定向。

function roomExist() {
  let name = document.getElementById('name');
  if (!isEmpty(name)) return;
  let room = document.getElementById('room');
  if(!isEmpty(room)) return;
  fetch('../api/room')
  .then(res => res.json())
  .then(data => {
    data.forEach((e) => {
      if (e.name === room.value) {
        submitForm()
      }})
      createRoom(room.value)
  })
}

轮子,我的问题是最后一部分,我如何向我的 api 发送 POST 请求。

标签: javascriptjquerydjangorest

解决方案


推荐阅读