我正在学习如何创建API端点,并尝试编写一个测试来查看POST请求是否返回200状态码。我计划编写更多的测试,以确保端点返回所有预期的结果。我一直收到403状态码,我认为这是因为我需要在post数据中包含csrf令牌。在Django中测试POST端点的好方法是什么?
我的测试:
from django.test import TestCase
from app import settings
import requests
class ProjectEndpoint(TestCase):
def post_endpoint(self):
data = {'hello':'23'}
post_project = requests.post(settings.BASE_URL+'/api/project', params=data)
self.assertEqual(post_endpoint.status_code, 200)
这个测试一直无法通过,返回的是403而不是200。
我想这是因为视图受到了csrf攻击的保护,但我并不确定。希望有人能提供一些见解。