2017-12-11 9 views
0

Ich versuche, ein Cron in Google App-Engine, die ein Skript node.js alle 2 Minuten ausführen sollte, aber ich bekomme immer 404 Fehler im Protokoll. Ich sehe, dass der Cron alle 2 Minuten läuft, aber er findet das Skript nicht cronRun.js. Unten ist der relevante Teil des Codes.Google App Engine Cron zurück 404 für Knoten js

cron.yaml

cron: 
- description: "daily summary job" 
    url: /task 
    schedule: every 2 minutes 

app.yaml

runtime: nodejs 
env: flex 
api_version: 1 
threadsafe: true 

handlers: 
- url: /task 
    script: cronRun.js 

log:

"GET/Aufgabe" 404

Dadurch sehe ich, dass ich den Pfad nicht richtig definieren.

Im Folgenden finden Sie die Dateistruktur

enter image description here

+0

Haben Sie versucht, direkt eine Anfrage an den **/Task ** - Endpunkt zu stellen, ohne den Cron-Job zu durchlaufen? Vielleicht liegt das Problem in Ihrer Bewerbung und nicht in Cron. – dsesto

+1

Mögliches Duplikat von [404 von Cron-Job in der Google App-Engine-Django-App] (https://stackoverflow.com/questions/45776773/404-from-cron-job-on-google-app-engine-django-app) –

+0

@ Yandrak3 Danke! es funktionierte. Ich bin sehr neu in Node Js und Google App Engine. Ich habe nie daran gedacht zu prüfen, ob die Endpunkte funktionieren. Wahrscheinlich können Sie Ihre Kommentare als Antwort hinzufügen, damit ich sie schließen kann. – Psypher

Antwort

1

Haben Sie eine Anfrage an den/die Aufgabe Endpunkt zu machen versucht, direkt, ohne den Cron Job durchlaufen?

Das Problem kann mit der Anwendung selbst und nicht mit dem Cron-Job zusammenhängen. Daher würde ich Ihnen empfehlen, es zu testen, indem Sie mit dem /task Endpunkt auf Ihre App Engine-Anwendung zugreifen.

Wenn es nicht funktioniert, wird das Problem definitiv von der Anwendung und nicht von Cron verursacht.