App Engine任务队列处理程序抛出302错误

时间:2018-09-28 22:11:28

标签: google-app-engine task-queue

我有一个App Engine Python应用程序,该应用程序的端点将任务放入“任务队列”中。 -很好。

我有一个任务处理程序Python应用程序,它将在队列中执行任务。

调用任务处理程序时,会出现以下错误提示

请求失败,因为URL需要用户登录。对于在App Engine中调用的请求(如任务队列之类的脱机请求,或XMPP和传入邮件之类的Webhooks),该URL必须要求管理员登录(或不登录)。

我的App Engine Python应用程序app.yml在下面

service: dataload-test
runtime: python27
api_version: 1
threadsafe: true

handlers:
  - url: /.*
    script: main.app

  - url: /_ah/queue/deferred
    script: google.appengine.ext.deferred.deferred.application
    login: admin


libraries:
  - name: ssl
    version: latest

builtins:
  - deferred: on
  - appstats: on

env_variables:
  GAE_USE_SOCKETS_HTTPLIB : 'true'

我的任务处理程序应用程序app.yml在下面

service: adobe-dataload-worker
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /.*
  script: load_data_worker.app
  login: admin

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

您的通配符const firebase = require('./Database'); const voucher_codes = require('voucher-code-generator'); exports.generateCoupons = function(params) { var len = params.len; var count = params.count; var pattern = params.pattern; //pattern = pattern.replace(/1/g,'#'); const cpn_db = firebase.firebase.database(); var coupons; return new Promise((resolve,reject)=>{ coupons = voucher_codes.generate({ length:len, count:count, prefix:"AMP-", pattern: '####-####', charset:"0123456789ABCDEFGHIJKLMNOPQRSTUVXYZ" }); if(coupons!==null) { for(var i =0;i<count;i++) { cpn_db.ref('coupons/cid-'+coupons[i]).set({ "addedOn": getDateTime(), "code" : coupons[i], "amount" : 20, "expireDate" : null, "isActive" : true, "isDeleted":false }); } resolve({ "success":true, "coupons":coupons }); } else { resolve({ "success":false }); } }); } 处理程序正在处理每个URL。

最后放置一个,否则将不会显示- url: /.*处理程序:

deferred