Как использовать очередь рабочих мест полезной нагрузки CMSJavascript

Форум по Javascript
Ответить
Anonymous
 Как использовать очередь рабочих мест полезной нагрузки CMS

Сообщение Anonymous »

Я новичок в Paylaod CMS и пытаюсь использовать очередь заданий, просто пытаясь отправлять электронную почту каждую минуту и ​​тестирование на локальной машине.export default buildConfig({
jobs: {
access: {
run: ({ req }: { req: PayloadRequest }): boolean => {
// Allow logged in users to execute this endpoint (default)
if (req.user) return true

// If there is no logged in user, then check
// for the Vercel Cron secret to be present as an
// Authorization header:
const authHeader = req.headers.get('authorization')
return authHeader === `Bearer ${process.env.CRON_SECRET}`
},
},
tasks: [
{
slug: 'demoTask',
inputSchema: [
{
name: 'time',
type: 'text',
required: true,
},
],

// These are the properties that the function should output
outputSchema: [
{
name: 'text',
type: 'text',
required: true,
},
],
handler: async ({ input, req }) => {
await req.payload.sendEmail({
to: 'example@domain.com',
subject: 'This is a demoQueue email',
text: `This is a demoQueue email ${input.time}`,
})
return {
output: {
text: `${input} loged`,
},
}
},
},
],
workflows: [
{
slug: 'demoWorkflow',
handler: async ({ job, tasks }) => {
await tasks.demoTask('1', {
input: {
time: `${new Date().toISOString()}`,
},
})
},
queue: 'demoQueue',
},
],

autoRun: [
{
cron: '* * * * *', // every minute
limit: 1, // limit jobs to process each run
queue: 'demoQueue', // name of the queue
},
],
},
email: resendAdapter({
defaultFromAddress: 'no-reply@domain.com',
defaultFromName: 'Project Name',
apiKey: process.env.RESEND_API_KEY!,
}),
})
< /code>
Но это не работает, даже когда я пытался с командой: < /p>
npx payload jobs:run --queue demoQueue --limit 1
< /code>
Ошибка в команде < /p>
MongoNotConnectedError: Client must be connected before running operations
< /code>
Но я проверяю с другой операцией подключения mongodb работает нормально
даже I При попытке отправить электронную почту с помощью Collection Hook "Afterchange", электронное письмо работает нормально < /p>
Можно ли помочь, где я делаю ошибку?>

Подробнее здесь: https://stackoverflow.com/questions/795 ... jobs-queue
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»