React 前端在成功请求后未收到来自 Django HttpResponse 的响应

我正在开发一个带有React前端和Django后端的应用程序。


前端请求正在命中后端(并更新 db),但响应未返回到前端。我是Django和React的新手,所以我无法调试它。


反应前端


var csrftoken = Cookies.get('csrftoken')


let headers = {

   "X-CSRFToken": csrftoken,

   "Content-Type": "application/x-www-form-urlencoded"

 };


const qs = require('qs');

axios.post('/api/thing/new/', qs.stringify({thing_text: thing.thing_text}), {'headers': headers})

  .then((result) => {

    console.log(results)

  });

Django 后端


class ThingForm(ModelForm):

    class Meta:

        model = Thing

        fields = ['thing_text']


def thing_create(request):


    form = ThingForm(request.POST or None)

    if form.is_valid():

        form.save()


    return JsonResponse({'foo':'bar'}) 

我也尝试过返回响应,但无济于事。return HttpResponse(status=204)


这会导致错误,


Uncaught (in promise) ReferenceError: results is not defined

我将其解释为没有任何内容返回到前端(尽管我可能是错的)。同样,我知道后端正在接收请求,因为在数据库中创建了一条记录。


有什么我应该尝试调试它吗?


梵蒂冈之花
浏览 123回答 1
1回答

拉丁的传说

你以错误的方式使用 React。承诺旨在稍后返回结果。当你的承诺被解决或拒绝时。尝试解决承诺。axios.post('/api/thing/new/', qs.stringify({thing_text: thing.thing_text}), {'headers': headers})       .then(res=>(               console.log(res.data)       ))
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go