简体   繁体   English

Django : Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0

[英]Django : Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0

Error When Click Button for send data.单击按钮发送数据时出错。 Please Helping me to solve problem.请帮我解决问题。 Error When Click Button for send data.单击按钮发送数据时出错。 Please Helping me to solve problem.请帮我解决问题。 Error When Click Button for send data.单击按钮发送数据时出错。 Please Helping me to solve problem.请帮我解决问题。

detail.html详细信息.html

    td>
              <!-- <a href="{% url 'Detail_pem' %}"><button data-product="{{order.id}}" data-act="{{order.name}}" class="btn btn-warning id_order btntam" >Detail</button> </a> -->
              <button data-product="{{order.id}}" data-act="{{order.name}}" class="btn btn-warning id_order btntam" >Detail</button> 
            </td>
          </tr>
          {% endfor %}
        </tbody>
      </table>
</div>
<!-- <script type="text/JavaScript" src="{% static 'js/pem.js' %}"></script> -->

<script>
var id_order = document.getElementsByClassName('id_order')
for (i = 0; i < id_order.length; i++) {
  id_order[i].addEventListener('click', function(){
        var orid  = this.dataset.product
        var ornm  = this.dataset.act
        console.log('orid :', orid)
        console.log('ornm :', ornm)
        codata(orid, ornm)
    })
    
}
function codata(orid, ornm){
  console.log('orid :', orid, 'ornm :', ornm)
const url = "Detail"
fetch(url, {
        method :'POST',
        headers : {
            'Content-Type' : 'application/json',
            'X-CSRFToken'  :  csrftoken,
        },
        body:JSON.stringify({'orid':orid, 'ornm':ornm}),
    })
    .then((response) =>{
        return response.json();
    })
    .then((data) => {
      console.log('Success:', data);
                })
}
</script>
{% endblock %}

view.py视图.py

def Detail(request):
    data    = json.loads(request.body.decode("utf-8"))
    orid    = data['orid']
    ornm    = data['ornm']
    print('id :', orid,'nama :', ornm)
    context = {'orid ':orid , 'ornm':ornm}

    return render(request, 'store/detail.html', context )

I think that the problem is that you are not returning a correct JSON object, you are returning a string, maybe try to change:我认为问题在于您没有返回正确的 JSON 对象,而是返回了一个字符串,也许可以尝试更改:

From this:由此:

def Detail(request):
    data    = json.loads(request.body.decode("utf-8"))
    orid    = data['orid']
    ornm    = data['ornm']
    print('id :', orid,'nama :', ornm)

    return JsonResponse('Payment complete', safe=False)

to something like this:像这样:

def Detail(request):
    data    = json.loads(request.body.decode("utf-8"))
    orid    = data['orid']
    ornm    = data['ornm']
    print('id :', orid,'nama :', ornm)

    return JsonResponse({'status':'Payment complete'}, safe=False)

See for example Django documentation:参见例如 Django 文档:

django json response django json响应

JavaScript JavaScript

<script>
var id_order = document.getElementsByClassName('id_order')
for (i = 0; i < id_order.length; i++) {
  id_order[i].addEventListener('click', function(){
        var orid  = this.dataset.product
        var ornm  = this.dataset.act
        console.log('orid :', orid)
        console.log('ornm :', ornm)
        data(orid, ornm)
    })
    
}
function data(orid, ornm){
  console.log('orid :', orid, 'ornm :', ornm)
const url = "Detail"
fetch(url, {
        method :'POST',
        headers : {
            'Content-Type' : 'application/json',
            'X-CSRFToken'  :  csrftoken,
        },
        body:JSON.stringify({'orid':orid, 'ornm':ornm}),
    })
        .then((response) => response.json())
                .then((data) => {
                    console.log('Success:', data);
                    window.location.href = "{% url 'Detail_pem' %}"

                })
}
</script>

view.py视图.py

def Detail_pem(request):
    data    = json.loads(request.body.decode("utf-8"))
    orid    = data['orid']
    ornm    = data['ornm']

    print('id :', orid, 'nama :', ornm)

    context = {'orid ':orid , 'ornm':ornm}
    return render(request, 'store/detail.html', context )
    
def Detail(request):
    data    = json.loads(request.body.decode("utf-8"))
    orid    = data['orid']
    ornm    = data['ornm']
    print('id :', orid,'nama :', ornm)

    return JsonResponse('Payment complete', safe=False)

Getting Error like that JSONDecodeError at /Detail_pem Expecting value: line 1 column 1 (char 0) enter image description here在 /Detail_pem 出现类似 JSONDecodeError 的错误期望值:第 1 行第 1 列(字符 0)在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 未捕获(承诺)SyntaxError:JSON 中位置 0 的意外标记 &lt; - Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 Uncaught (in promise) SyntaxError: Unexpected token N in JSON at position 0 - Uncaught (in promise) SyntaxError: Unexpected token N in JSON at position 0 未捕获的 Promise Rejection SyntaxError: Unexpected token u in JSON at position 0 - Uncaught Promise Rejection SyntaxError: Unexpected token u in JSON at position 0 如何修复“Uncaught (in promise) SyntaxError: Unexpected token &lt; in JSON at position 0”错误 - How to fix “Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0” ERROR Redux 应用程序错误:未捕获(承诺中) SyntaxError:意外令牌 &lt; 在 position 0 处的 JSON - Redux app error: Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 Uncaught (in promise) SyntaxError: Unexpected token &lt; in JSON at position 0 使用 vuejs - Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 using vuejs Uncaught (in promise) SyntaxError: Unexpected token &lt; in JSON at position 0 (React/Redux App) - Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 (React/Redux App) React Js: Uncaught (in promise) SyntaxError: Unexpected token &lt; in JSON at position 0 - React Js: Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 VM101:1 Uncaught (in promise) SyntaxError: Unexpected token &lt; in JSON at position 0 - VM101:1 Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0 VM39:1 Uncaught (in promise) SyntaxError: Unexpected token &lt; in JSON at position 0 - VM39:1 Uncaught (in promise) SyntaxError: Unexpected token < in JSON at position 0
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM