排球请求django休息处理响应

时间:2018-04-18 13:21:58

标签: android django

我正在使用django和其余框架作为Android应用程序的后端。我使用POST请求来注册用户,这很好,但是我有一些我想要处理的东西,而且我不知道该怎么做。

当用户名已被占用时,django会发回一个http代码400和一个带有一些信息的json对象(例如已经使用的用户名)。我可以在postman中看到,但在Android上,我得到的是com.android.volley.ClientError。有没有办法得到django回馈的消息?

以下是我对Django的看法的功能:

def registere(request):
    ans = RegSerializer(data=request.data)
    if ans.is_valid():
        ans.save()
        return Response(ans.data, status=status.HTTP_201_CREATED)
    else:
        return Response(ans._errors, status=status.HTTP_400_BAD_REQUEST)

以下是我在Android上处理错误的方法:

new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        Toast.makeText(getApplicationContext(), "Error:  " + error.toString(), Toast.LENGTH_SHORT).show();
                    }
                }

1 个答案:

答案 0 :(得分:0)

尝试这个解析来自django的错误:

extra_field

希望这有帮助!