Question

Je peux utiliser ce verbe dans le SDK Python de Windows. Mais pas dans la production. Pourquoi? Qu'est-ce que je fais mal?

Le message d'erreur comprend (visible uniquement via firebug ou violoniste)

  

Demande malformée

ou quelque chose comme ça

Mon code ressemble à:

from google.appengine.ext import db
from google.appengine.ext import webapp

class Handler(webapp.RequestHandler):
   def delete(self):
       key = self.request.get('key')
       item = db.get(key)
       item.delete()
       self.response.out.write(key)
Était-ce utile?

La solution

Votre gestionnaire semble OK, êtes-vous sûr que vous envoyez correctement la demande? En utilisant jQuery, cela fonctionne pour moi (à la fois en utilisant la production de dev_appserver et Google App Engine):

$('#delete-button').click(function() {
    $.ajax({
        'type': 'DELETE',
        'url': '/some/url/that/handles/delete'
    })
});

class DeleteHandler(webapp.RequestHandler):

    def delete(self):
        if users.get_current_user() == allowed_user:
            the_data_model.delete()
        else:
            self.response.out.write('Permission denied')

L'envoi d'un corps / message de réponse n'a pas fonctionné pour moi (par exemple le message « autorisation refusée » dans mon exemple ne se rendre au client). Avez-vous vérifié vos articles ne sont pas supprimés?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top