Rumah  >  Soal Jawab  >  teks badan

python - django-rest-framework如何实现对view参数进行认证的

比如有下面一个View,比较简单:

class UsersView(View):
   def get(self,request):
      ......

这个GET方法会接受一个参数id,也就是用户的ID,理想的状态是只要进入get方法内,那么这个用户就是存在的,否则就直接抛404或者其他。

但现在的做法是在view里面做判断用户是否存在,然后再做不同的操作。

Q

class UsersView(View):
    authentication_classes = ....
    permission_classes = ....
    serializer_class = ....

不知道rest里面有没有这种方法,可以在进入View里面之前就可以做参数的验证,而不用在View里面。

PHP中文网PHP中文网2741 hari yang lalu494

membalas semua(2)saya akan balas

  • 黄舟

    黄舟2017-04-18 10:32:49

    Sumber yang tidak boleh diminta akan secara automatik membuang ralat 404

    balas
    0
  • ringa_lee

    ringa_lee2017-04-18 10:32:49

    Kelas_Authentication ditetapkan dalam paparan rehat Anda boleh melakukan pengesahan yang sepadan sebelum memasuki fungsi paparan Anda boleh menulis kelas pengesahan tersuai, mewarisi kelas pengesahan.BaseAuthentication dan melaksanakan kaedah pengesahan(diri, permintaan). pengesahan dalam kaedah ini Pertimbangan logik yang anda perlukan, kembalikan maklumat ralat yang sepadan, dsb.

    Tetapi ia digunakan terutamanya untuk pengesahan pengguna semasa yang meminta. Contohnya, adalah perkara biasa untuk menulisnya dalam paparan untuk menentukan sama ada ID itu wujud Jika berbilang paparan memerlukannya, anda boleh menulis penghias.

    balas
    0
  • Batalbalas