REST API и веб-хуки - PullRequest
       18

REST API и веб-хуки

0 голосов
/ 12 февраля 2020

Я создаю собственный RESTful API и хочу использовать в нем веб-крючок. RESTful API похож на список задач, но я бы хотел, чтобы webhook срабатывал каждый раз, когда пользователь создает новую задачу.
Я хочу, чтобы webhook уведомлял всех пользователей, подписавшихся на webhook, о появлении новой задачи. был создан.

Но как мне это сделать? Как я должен думать, решая эту проблему?
Я очень хорошо разбираюсь во всех методах HTTP и могу выполнять все действия CRUD.
Также все средства авторизации, такие как вход и выход из системы, так что это не проблема.

Но я не могу обдумать, как создать свой собственный веб-крючок.
Я добавил код с комментариями, чтобы сделать мой вопрос еще яснее.
Заранее спасибо за любые предложения.

const express = require('express')
const app = express()

const port = 1212

app.use('/', (req, res) => {
    res.send('Hello hello')
})

app.post('/register', (req, res) => {
    // User registers to a webhook subscription.
    // All users that chose to subscribe to the webhook
    // will be added to a DB.
})

app.post('/task', (req, res) => {
    // User creates a task.
    // I know how to create, delete, read and update tasks
    // so this is no problem.
})

app.post('/webhook', (req, res) => {
    // This is where all of the confusion is.
    // I want this webhook to trigger whenever a task is made.
    // But how do I do it?
    // A user makes a post, creates a new task.
    // This webhook should fire off and notify the subscribed users, but how?
    // How should I think when making a webhook?
    // How do I reach out to the users that subscribed for these notifications?
}) 

app.listen(port, () => {
    console.log('Connected to port: ' + port)
})
...