This commit is contained in:
Administrator 2022-08-24 01:04:54 +03:00
parent 3783482c6d
commit bb8ac8edbc
4 changed files with 17 additions and 2 deletions

View File

View File

@ -0,0 +1,8 @@
from django.utils.deprecation import MiddlewareMixin
class CorsMiddleware(MiddlewareMixin):
def process_response(self, request, response):
response.headers["Access-Control-Allow-Origin"] = "*"
response.headers["Access-Control-Allow-Headers"] = "*"
return response

View File

@ -1,13 +1,13 @@
from django.http import JsonResponse
from django.shortcuts import render
# Create your views here.
from django.utils import timezone
from django.views.decorators.csrf import csrf_exempt
from battleship.models import Game, Player, generate_token
from battleship.utils import check_field
@csrf_exempt
def new_game(request):
game = Game.objects.create()
player1 = Player.objects.create(
@ -26,6 +26,7 @@ def new_game(request):
})
@csrf_exempt
def attend_game(request):
game_id = request.POST['game_id']
attend_token = request.POST['attend_token']
@ -39,6 +40,7 @@ def attend_game(request):
})
@csrf_exempt
def place_ships(request):
game_id = request.POST['game_id']
token = request.POST['token']
@ -53,6 +55,7 @@ def place_ships(request):
return JsonResponse({}, status=403)
@csrf_exempt
def check_opponent(request):
game_id = request.POST['game_id']
token = request.POST['token']
@ -63,6 +66,7 @@ def check_opponent(request):
return JsonResponse({"attend": True, "ready": player2.field != ' ' * 100})
@csrf_exempt
def shoot(request):
game_id = request.POST['game_id']
token = request.POST['token']
@ -99,6 +103,7 @@ def shoot(request):
})
@csrf_exempt
def check_status(request):
game_id = request.POST['game_id']
token = request.POST['token']
@ -110,6 +115,7 @@ def check_status(request):
})
@csrf_exempt
def check_field_correct(request):
return JsonResponse({
'correct': check_field(request.POST['field'])

View File

@ -48,6 +48,7 @@ MIDDLEWARE = [
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'battleship.middleware.cors.CorsMiddleware',
]
ROOT_URLCONF = 'battleship_back.urls'