【问题标题】:VM125:1 Uncaught (in promise) SyntaxError: Unexpected token K in JSON at position 0VM125:1 未捕获(承诺)SyntaxError:JSON 中位置 0 的意外标记 K
【发布时间】:2021-07-02 16:50:06
【问题描述】:

,我正在做这个项目,它是一个使用 django 的电子商务网站。我创建了一个视图,如果用户经过身份验证,它将根据不同场景处理用户的顺序。 这是视图的代码。

transaction_id = datetime.datetime.now().timestamp()
data = json.loads(request.body)

if request.user.is_authenticated:
    customer = request.user.customer
    order, created = Order.objects.get_or_create(customer=customer, complete=False)
else:
    customer, order = guestOrder(request, data)

total = float(data['form']['total'])
order.transaction_id = transaction_id

if total == order.get_cart_total:
    order.complete = True
order.save()

if order.shipping == True:
    ShippingAddress.objects.create(
    customer=customer,
    order=order,
    address=data['shipping']['address'],
    city=data['shipping']['city'],
    state=data['shipping']['state'],
    zipcode=data['shipping']['zipcode'],
    )

return JsonResponse('Payment submitted..', safe=False)

注意:有些功能在其他文件中,如果您想检查它们,请告诉我。

enter image description here

在这张图片中有两个错误,第一个是指 process_order 视图(上面的代码)。

我无法解决此问题。 当我尝试将数据发布到数据库时

var url = "/process_order/" 获取(网址,{ 方法:'POST', 标题:{ '内容类型':'应用程序/json', '接受': '应用程序/json', 'X-CSRFToken':csrftoken, }, 正文:JSON.stringify({'form':userFormData, 'shipping':shippingInfo}),

        })
        .then((response) => response.json())
        .then((data) => {
            console.log('Success:', data);
            alert('Transaction completed');  

使用此代码也可以不发送数据。有人可以帮忙吗?

【问题讨论】:

    标签: python json django fetch e-commerce


    【解决方案1】:

    编辑:这不是故事的全部。服务器也会产生 500 错误,这很可能是一个 HTML 代码,response.json() 也无法解析。您应该在 python 控制台中检查错误并解决它。您还可以尝试查看浏览器开发工具以查看 Django 生成的整个响应。

    目前尚不清楚为什么错误状态为token 'K',可能来自代码的未显示部分,但问题在于服务器产生的无效JSON响应。

    您不能将纯字符串作为 JSON 规范中的顶级事物。所以你应该使用这样的东西而不是JsonResponse('Payment submitted..')

    JsonResponse({'detail': 'Payment submitted..'})
    

    JsonResponse 用法的所有其他实例也是如此。

    【讨论】:

      猜你喜欢
      • 2019-09-23
      • 2017-09-07
      • 2019-09-21
      • 1970-01-01
      • 1970-01-01
      • 2016-10-22
      • 2021-09-23
      • 2020-06-10
      • 1970-01-01
      相关资源
      最近更新 更多