2010-11-27 7 views
1

Je fais cela en utilisant Django/GAE/environnement Python:Django objet de réponse HTTP pour GAE Cron

cron: 
    #run events every 12 hours 

et

def events(request): 
    # read all records 
    # Do some processing on a few records 

    return http.HTTPResponseGone('Some Records are modified') 

Résultat dans la production: d'emploi fonctionne sur le temps avec 'échoué' message Toutefois, il a effectué le travail exactement sur la banque de données, au besoin. Aucune entrée de journal d'erreurs vue Dev: aucune erreur; renvoie le message 'Certains enregistrements sont modifiés'

Est-il possible d'éviter que la réponse HTTP soit renvoyée? Il n'y a pas besoin de HTTPResponse pour moi, cependant, j'ai gardé ceci comme le test du serveur Dev échoue en son absence. Quelqu'un peut-il m'aider à rendre le code propre?

Répondre

2

Fini l'erreur 410. Vous devriez retourner 200 succès si l'opération réussit. Lorsque vous renvoyez HttpResponse, l'état par défaut est 200.

+0

Est-il possible de supprimer complètement l'instruction de retour. Dans un boulot cron, cela n'a aucun sens. J'ai gardé cela pour le plaisir de faire correspondre avec la demande? –

+0

@Sharma, les tâches cron App Engine ne sont que des requêtes HTTP et chaque requête HTTP nécessite une réponse HTTP. –

+0

Merci. Je comprends que le changement que je dois faire serait de renvoyer http.HTTPResponse(). Va essayer et voir ce qui se passe en production –