현재 장고 프로젝트를 진행 중입니다. CURL을 사용하여 GET 요청을 전송할 때 제대로 작동하지만 POST 요청의 경우 500 개의 내부 오류가 발생합니다. 나는 그것이 csrf 토큰과 관련이 있다고 생각한다. 그리고 나는 csrf가 어떻게해야하는지, 또는 어떻게 csrf가 나의 오류를 해결할 것인지 전혀 모른다.Django POST 메서드로 500 내부 서버 오류 발생
또한 설정 한 DEBUG = 거짓과 ALLOWED_HOSTS = [ '*'] settings.py에서, 그러나 또한 내가 같은 오류가 점점 오전 :
서버 오류 (500)
다음은 일부 조각 내 코드 :
urls.py이 뷰에서 함수가
from django.conf.urls import patterns, url
urlpatterns = patterns(
'project.views',
url(r'^users/$', 'userList', name='userList'),
url(r'^users/(?P<pk>[0-9]+)$', 'userDetail', name='userDetail'),
)
, 평
@api_view(['GET', 'POST'])
def userList(request):
if request.method == 'GET':
user = users.objects.all()
serializer = UsersSerializer(user, many=True)
return Response(serializer.data)
elif request.method == 'POST':
serializer = UsersSerializer(data=request.DATA)
if serializer.is_valid():
serializer.save()
return Response(serializer.data, status=status.HTTP_201_CREATED)
else:
return Response(
serializer.errors, status=status.HTTP_400_BAD_REQUEST)
,369
컬 -X POST http://127.0.0.1:8000/users/ -d '{ "이름": "루트", "이메일": "[email protected]"}'
이것은 내가 터미널에서 사용하고있는 명령입니다 -H "콘텐츠 형식 : 응용 프로그램/JSON"
장고 버전 번호 :
{ "사용자 이름": : 나는 같은 오류를 얻고있다 POSTMAN에서 1.9
[ ".이 필드는 필요" ], "email": [ "이 필드는 필수입니다." ] }는
서버의 로그에 액세스 할 수 있습니까? 흔적이 뭐라고하니? –
DEBUG을 True로 설정하면 전체 오류가 표시됩니다. 그것은 무엇을 말하는가? –
POSTMAN을 사용할 때 { "detail": "지원되지 않는 미디어 유형 \"text/plain; charset = UTF-8 \ "요청시 오류가 발생했습니다. } – neerav94