预期效果

Django通过Ajax POST提交数据,前台弹窗处理结果

粗略代码

# views.py 代码
...省略...
msg = {
'code': 200,
'message': 'Hello World'
}
...省略...
return HttpResponse(json.dumps(msg), content_type='application/json') # hello.html 代码
...省略...
success: function (res) {
var jsondata = JSON.parse(res);
alert(jsondata.message);
}
...省略...

问题现象

Django通过Ajax POST提交数据,views视图通过HttpResponse返回结果,在返回结果前使用了 json.dumps 方法,结果:前台无任何反应。打开F12查看,在Console中出现报错:

...省略...
Unexpected token o in JSON at position 1
...省略...

调整代码

通过调整代码,发现前台弹窗内容为: [Object Object]

# hello.html 代码
...省略...
success: function (res) {
alert(res);
}
...省略...

问题解决

调整最终代码,修改为 alert(res.message); 问题解决

# hello.html 代码
...省略...
success: function (res) {
alert(res.message);
}
...省略...

Django开发之Ajax 返回内容报错的更多相关文章

  1. Django开发之Ajax POST提交403报错

    问题现象 Django开发时,前端post提交数据时,由于csrf机制,如果不做处理会报403报错 问题解决 通过在data字段中添加 csrfmiddlewaretoken: '{{ csrf_to ...

  2. EasyPlayerPro(Windows)流媒体播放器开发之ffmpeg log输出报错

    EasyPlayerPro主要基于ffmpeg进行开发,在EasyPlayerPro开发过程中,曾遇到一个相对比较棘手的问题,该问题一般在播放不是很标准的流或者网络情况较差,容易出现丢帧的情况特别容易 ...

  3. spring boot 开发 ajax返回值报错

    org.thymeleaf.exceptions.TemplateInputException: Error resolving template "succeed", templ ...

  4. flask+sqlite3+echarts2+ajax数据可视化报错:UnicodeDecodeError: 'utf8' codec can't decode byte解决方法

    flask+sqlite3+echarts2+ajax数据可视化报错: UnicodeDecodeError: 'utf8' codec can't decode byte 解决方法: 将 py文件和 ...

  5. Django 编写自定义的 404 / 500 报错界面

    Django 编写自定义的 404 / 500 报错界面 1. 首先 setting.py 文件中的 debug 参数设置成 false ,不启用调试. DEBUG = False 2. 在 temp ...

  6. python2 + selenium + eclipse 中,通过django生产数据库表的时候报错

    python2 + selenium + eclipse 中,通过django生产数据库表的时候报错 解决: 1.查看自己电脑中,“开始-->控制面板-->管理工具-->服务--&g ...

  7. 使用wkwebview时,push后,再pop返回,报错

    使用wkwebview时,push后,再pop返回,报错 Cannot form weak reference to instance (xxxx) of class xxxx. It is poss ...

  8. python自动开发之(ajax)第二十天

    1.Django请求的生命周期 路由系统 -> 试图函数(获取模板+数据=>渲染) -> 字符串返回给用户 2.路由系统 /index/ -> 函数或类.as_view() / ...

  9. ajax jsonp请求报错not a function的解决方案

    概述 最近工作中使用ajax,有时会报json4 is not a function的错误,有时又不会报错.找了很久,网上说是因为多次请求同一个资源导致的,但是我检查了自己的代码,对于重复资源并没有重 ...

随机推荐

  1. 《UNIX环境高级编程》(APUE) 笔记第十章 - 信号

    10 - 信号 GitHub 地址 1. 信号 信号是 软中断 ,信号提供了一种处理异步事件的方法. 当造成信号的事件发生时,为进程 产生 一个信号(或向进程 发送 一个信号).事件 可以是硬件异常( ...

  2. 计算机组成原理Day-1

  3. 修改git指令alias

    修改git指令alias 嫌打git add, git push 太麻烦,可以修改bash里的 alias,改成'ga','gp'这样的短命令 打开 Git Bash, 创建修改.bashrc文件. ...

  4. java语言基础(五)_Scanner类_Random类_ArrayList类

    API API(Application Programming Interface),应用程序编程接口.Java API是一本程序员的字典 ,是JDK中提供给程序员使用的类的说明文档.这些类将底层的代 ...

  5. python学习笔记之数据类型(二)

    上一篇博客,小波介绍了python的入门和简单流程控制,这次写python的数据类型和各种数据类型的内置方法. 一.数据类型是何方神圣? 计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当 ...

  6. 2020最新的Spring Boot 分布式锁的具体实现(内附代码)

    前言 面试总是会被问到有没有用过分布式锁.redis 锁,大部分读者平时很少接触到,所以只能很无奈的回答 "没有".本文通过 Spring Boot 整合 redisson 来实现 ...

  7. Install-Package : 找不到程序包

    将程序包源链接地址改为https://www.nuget.org/api/v2/即可.

  8. True Liars POJ - 1417

    True Liars After having drifted about in a small boat for a couple of days, Akira Crusoe Maeda was f ...

  9. 你是如何理解Vue的响应式系统的

    1.响应式系统简述: 任何一个 Vue Component 都有一个与之对应的 Watcher 实例. Vue 的 data 上的属性会被添加 getter 和 setter 属性. 当 Vue Co ...

  10. JavaScript学习 Ⅴ

    十. 一些对象 Date 对象 Date对象用来表示一个时间 创建Date对象 如果直接使用构造函数创建一个Date对象,则会封装为当前代码执行的时间 var d = new Date(); 创建一个 ...