2016-04-03 35 views
0

Bu, HTML koduYasak 403 CSRF hata request.post.get kullanıldığında() metodu

<form action="http://127.0.0.1:8000/minor/postdata/" method="POST"> 
data:<br> 
    <input type="text" name="data"><br> 


<input type="submit" value="Submit"> 

</form> 

olan

from django.shortcuts import render 
from django.http import HttpResponse 
from django.http import HttpRequest 
from django.db import models 
from datetime import datetime 
# Create your views here. 

def postdata(request): 
    if request.method == "POST": 
     data=request.POST.get('data') 
return HttpResponse(data)` 

views.py kodudur GET istekleri için çalışan kod alabilirim basit html sayfa gelen posta verileri ile istek için çözüm bulamıyorum. Bu sunucuyu android uygulamasından bağlamalıyım

cevap

0

csrf_token gönderim isteğinizle birlikte göndermiyor olmanızdır. Güvenlik nedeniyle, django tüm POST isteklerinde csrf_tokens'i kontrol eder.

Bunu, csrf_token templatetag kullanarak şablonunda csrf_token ekleyebilirsiniz:

<form action="http://127.0.0.1:8000/minor/postdata/" method="POST"> 
{% csrf_token %} 

Okuma: How to use CSRF token in Django

+0

Eh, şablon değil .... basit html sayfasını kullanarak ve doğrudan url arıyorum sayfadan –

+0

CSRF'yi denetlemeyen bir görünümünüz varsa, görünümünüzle 'csrf_except' dekoratörünü kullanın. Else, csrf çerezini kapmak ve değerini forma eklemek için JS kullanmanız gerekecek. – v1k45

İlgili konular