【问题标题】:SPA Django-Rest-Framework and React Issue: Not FoundSPA Django-Rest-Framework 和 React 问题:未找到
【发布时间】:2018-04-20 17:30:39
【问题描述】:

我目前正在使用 react 和 drf 制作简单的单页应用程序。所以在 drf 我有 APIView 和 post 和 get 方法。我在前端获取数据。与获取请求一切顺利。但我对职位感到困惑。

[20/Apr/2018 13:59:11] "GET /api/v1/update/ HTTP/1.1" 200 454
Not Found: /api/v1/update
[20/Apr/2018 13:59:11] "POST /api/v1/update HTTP/1.1" 404 2421`

请帮我找出错误

这是我的观点:

class TaskFormView(APIView):

def get(self, request, format=None):
    """
    Return a list of all tasks.
    """
    tasks = [{'name':task.name, 'status':task.status} for task in Task.objects.all()]
    return Response(tasks)


@csrf_exempt
def post(self, request, format=None):
    '''
    Post a new tasks
    '''
    serializer = TaskSerializer(data=request.data)
    if serializer.is_valid():
        serializer.save()
        return Response(serializer.data, status.HTTP_201_CREATED)
    return Response(serializer.errors, status.HTTP_400_BAD_REQUEST)

并从 react 应用中获取:

  uploadTask() {
fetch("http://127.0.0.1:8000/api/v1/update", {
method: 'POST',
headers: {
"Accept": "application/json",
"Content-Type": "application/json"
},
body: JSON.stringify({
  name: "name",
  status: true
})})
.then(response => response.json())
.then(data => console.log('Data is ok. ', data))
.catch(err => console.log("parsing failed", err))
}

【问题讨论】:

    标签: reactjs django-rest-framework single-page-application


    【解决方案1】:

    尝试在您的 POST 请求中添加斜杠 (/)。

    所以,POST 的 URL 应该类似于 http://127.0.0.1:8000/api/v1/update/

    【讨论】:

      猜你喜欢
      • 2019-02-03
      • 2019-02-20
      • 2013-02-01
      • 2021-11-22
      • 2020-11-15
      • 1970-01-01
      • 2020-08-10
      • 1970-01-01
      • 2020-12-27
      相关资源
      最近更新 更多