0
django-rest-frameworkを使用せずに簡単なDjango "RESTful" APIを設計したいと思います。DjangoはログインしたCookieを使用してJSONを返します
エンドポイントはであり、jsonではusername
とpassword
のPOSTメソッドのみを受け入れます。後で他のエンドポイントで使用するセッションCookieを使用して成功するには、{"status" : 0}
を返すようにしてください。ユーザーが正常にログインした場合のみ、Cookieが設定されます。
JsonResponse
オブジェクトをdjango.http
からインポートしましたが、どのようにユーザーのセッションを設定するかはわかりません。
def login(request):
# some code omitted, like if request.method == "POST"
credential = json.loads(request.body)
username = credential['username']
password = credential['password']
user = authenticate(username=username, password=password)
if user:
if user.is_active:
auth_login(request, user)
else:
return JsonResponse({"status" : 1, "err" : "Your account has been disabled"})
# TODO: Now return what?
documentを閲覧しましたが、役に立つヒントが見つかりませんでした。
KeyErrorを防ぐには、続行する前に 'username = credential.get( 'username')'を実行してからusernameが 'None'であるかどうかを確認する必要があります。また、パスワードに対しても同じ操作を行います。 – Flux