【问题标题】:JSON problems ajaxJSON问题ajax
【发布时间】:2021-03-16 11:29:52
【问题描述】:
me.addEventListener('change', (e) => {
    if (me.checked) {
        fetch("/demande/transporter/", {
            body: JSON.stringify({ cin_mle: cin_mle }),
            method: "POST"
        }).then(res => res.json()).then(data => {
            tn.value = data['email'];
            tn.disabled = true
        });
    }
});

代码js

class ReturnCredentilasView(View):
    def post(self, request):
        data = json.loads(request.body)
        cin_mle=data["cin_mle"]
        print(cin_mle)
        user=get_object_or_404(User, cin_mle=cin_mle)
        if not user:
            return JsonResponse({"User_status": "inexistant"})
        return JsonResponse({"email":user.email})

视图

错误:

 moi.js:10 POST http://127.0.0.1:8000/demande/transporter/ 404 (Not Found)
    (anonymous) @ moi.js:10
    127.0.0.1/:1 Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0

我需要使用 ajax 从 serer 检索一些数据,但出现了上面的错误。 该视图在邮递员上运行良好 我是复选框元素

【问题讨论】:

  • /demande/transporter/ 不返回 JSON。提到的&lt; 是标记的指标。
  • 你能解释一下安德烈亚斯先生吗?

标签: javascript json django ajax


【解决方案1】:

在这种情况下,来自服务器的响应是 JSON,因此只需更改 js 获取方法,如下所示:

me.addEventListener('change', (e) => {
    if (me.checked) {
        fetch("/demande/transporter/", {
            body: JSON.stringify({ cin_mle: cin_mle }),
            method: "POST"
        }).then(res => {
            tn.value = res.data.email;
            tn.disabled = true
        }).catch(err){
            console.log(err)
        };
    }
});

还要检查您的 url,因为“/demande/transporter/”正在返回 404,您可以分享映射到此端点的 django url 模式以获得进一步帮助

【讨论】:

  • 嗨 Ochom,urlpatterns = [ path('',NewDemView.as_view(), name='new-dem'), path('transporter/',csrf_exempt(ReturnCredentilasView.as_view()),名称='运输者'), ]
  • 邮递员返回好结果的网址“/demande/transporter/”
猜你喜欢
  • 2011-07-28
  • 2017-11-13
  • 2011-02-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-20
相关资源
最近更新 更多