저는 장고보기에 데이터를 게시하는 데 사용하는 (PHP로 코딩 된) WordPress 사이트가 있습니다. 이 코드csrf_exempt 데코레이터가 면제되지 않았습니다.
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $myvars);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_REFERER, 'https://mydjangosite.com/blah/blah2/');
URL이 위에서 내가
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
@api_wrapper
def add_referral_api(request, status_slug):
그러나이 경우에 교차 사이트 게시를 허용 할 때문에 @csrf_exempt
장식을 사용하는 이동 기능으로 게시, 난 여전히이 나타납니다 내 로그의 오류
[03/Feb/2017 18:17:48] WARNING [django.request:177] Forbidden (CSRF cookie not set.):
신뢰할 수있는 사이트간에 이러한 사이트 간 게시를 허용하려면 어떻게해야합니까?
EDIT 내 미들웨어 클래스도 마찬가지입니다. 이 사이트는 ssl 인증서를 사용하여 가치가 있는지 확인합니다. 추가 보안으로 인해 csrf_exemption
데코레이터가 작동하지 않을 것으로 예상됩니다. 아직도, 나는 어떻게 든이 한 사이트 (내 WP 사이트)가 게시물 데이터를받을 수 있다고 말할 수있게하고 싶습니다.
MIDDLEWARE_CLASSES = (
# This middleware is for ensuring that all pages use https
#'djangosecure.middleware.SecurityMiddleware',
'django.middleware.gzip.GZipMiddleware',
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'common.middleware.XsSharing',
'impersonate.middleware.ImpersonateMiddleware',
'referrals.middleware.ReferralMiddleware',
)
"api_wrapper"의 기능은 무엇입니까? 이보기가 맞았는지 확신합니까? –
예. 그것이하는 일은 정보를 게시하고 데이터베이스에 레코드를 추가하는 것입니다. –
'CSRF_COOKIE_SECURE' 설정을'True'로 설정 했습니까? –