Webhook Django - локальные POST-запросы с помощью Postman не работают
Я пытаюсь получить веб-крючки в моем приложении Django. Я создал свое приложение следующим образом:
models.py
:
class Webhook(models.Model):
""" Class designed to create webhooks. """
name = models.CharField(_('Nom'), max_length=50)
url = models.URLField(_('URL'))
event = models.CharField(_('Event'), max_length=50)
active = models.BooleanField(_('Actif'), default=True)
company = models.ForeignKey(Company, on_delete=models.DO_NOTHING, blank=True, null=True)
id_string = models.CharField(_('ID'), max_length=32, blank=True, null=True)
def __str__(self):
return self.name
def save(self, *args, **kwargs):
current_url = Site.objects.get_current().domain
self.id_string = get_random_string(length=32, allowed_chars='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789')
self.url = f'{current_url}/{self.company.id}/{self.id_string}'
super(Webhook, self).save(*args, **kwargs)
views.py
:
@csrf_exempt
def webhook(request, pk, ref):
if request.method == 'POST':
print(request.body)
return HttpResponse(request.body, status=200)
else:
return HttpResponse('Failed')
urls.py
:
urlpatterns = [
path('webhook/<int:pk>/<str:ref>', webhook, name='webhook'),
]
На данный момент я запускаю свое приложение локально. Когда я создаю объект webhook, у меня есть следующий URL :
127.0.0.1:8002/webhook/4/maPYUvcYZROq60cwJioIrqV5Y5OqXRiy
Когда я пытаюсь выполнить следующий POST-запрос:
Я всегда получаю ответ "Failed". Я не понимаю, почему.