123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- from django.shortcuts import render
- from .models import PublicKey
- from .form import AddPublicKeyForm
- from django.http import HttpResponse
- from django.contrib.auth.decorators import login_required
- import json
- DEBUG = True
- @login_required(login_url='/account/login/')
- def add_public_key(request):
- if request.method == 'POST':
- add_public_key_form = AddPublicKeyForm(data=request.POST)
- if add_public_key_form.is_valid():
- # 新建公钥表
- data = add_public_key_form.cleaned_data
- new_public_key = PublicKey()
- new_public_key.public_key = data['public_key']
- new_public_key.user = request.user
- # 保存
- new_public_key.save()
- return HttpResponse(status=200)
- else:
- return HttpResponse(status=400)
- # 用于测试
- elif request.method == 'GET':
- if DEBUG:
- return render(request, 'add_public_key.html')
- else:
- response = ['illegal method, please use post']
- return HttpResponse(json.dumps(response))
- @login_required(login_url='/account/login/')
- def get_public_key(request):
- if request.method == 'POST':
- data = request.POST
- # 筛选出此用户的公钥
- public_keys = PublicKey.objects.filter(user__username=data['username'])
- # 将筛选得到的此用户的公钥放入列表中并用json返回
- response = []
- for public_key in public_keys:
- response.append(public_key.public_key)
- return HttpResponse(json.dumps(response),status=200)
- # 用于测试
- elif request.method == 'GET':
- if DEBUG:
- return render(request, 'get_public_key.html')
- else:
- return HttpResponse(status=400)
|