J'ai gaspillé toute la journée sur ce stupide petit numéro! J'utilise django-rest-framework
pour mon api et backbone.js dans la partie frontale.Impossible de faire fonctionner CORS avec contenType - Django Rest Framework
Je ne peux pas faire de demande au serveur lors de l'ajout de l'option contentType
.
Voici un exemple simple de ce que je suis en train de faire:
$.ajax
url:"http://127.0.0.1:8080/foo/"
type:"POST"
data: '{"e":"e"}'
contentType: "application/json"
Les options échoue et le POST est jamais envoyé.
Les en-têtes de demande d'options:
Access-Control-Request-Headers:accept, origin, content-type
Access-Control-Request-Method:POST
Origin:http://localhost:8000
Maintenant, je ne sais pas pourquoi les options échouent. J'utilise l'application de corsheaders pour django, et les paramètres sont les suivants:
CORS_ORIGIN_ALLOW_ALL = True
CORS_ALLOW_HEADERS = (
'x-requested-with',
'content-type',
'accept',
'origin',
'authorization'
)
Peut-vous partager les OPTIONS têtes de réponse? – monsur
De plus, avez-vous besoin d'un attribut 'CORS_ALLOW_METHODS'? par exemple. CORS_ALLOW_METHODS = ( 'GET', 'POST', 'PUT', 'PATCH', 'SUPPRIMER', 'OPTIONS' ) – monsur
La réponse OPTIONS est complètement vide dans Chrome – Harry