学习资料

# 个人博客:https,证书过期,忽略
-https://www.liuqingzheng.top/
# cnblogs博客(后期迁移到这里,高级部分的内容)
-https://www.cnblogs.com/liuqingzheng
# 知乎
-https://www.zhihu.com/people/justin_liu

一、web 应用模式

django框架就是一种web框架,专门用来写web项目。之前学的,写的bbs项目,图书管理系统,用的是 前后端混合开发

	-后端人员,写后端,也要写【模板语法】---》xx.html的python代码
-全栈开发-->前后端混合时代,比较多

从今天开始,学的是前后端分离

	-后端人员,一点前端都不需要动,只需要写接口即可
-全栈开发---》web后端,前端框架(vue,react)

在开发Web应用中,有两种应用模式:

1.前后端不分离[客户端看到的内容和所有界面效果都是由服务端提供出来的。

2.前后端分离【把前端的界面效果(html,css,js分离到另一个服务端,python服务端只需要返回数据即可)】

前端形成一个独立的网站,服务端构成一个独立的网站

二、API接口

为了在团队内部形成共识、防止个人习惯差异引起的混乱,我们需要找到一种大家都觉得很好的接口实现规范,而且这种规范能够让后端写的接口,用途一目了然,减少双方之间的合作成本【前后端合作】

API概念

API:应用程序接口(API:Application Program Interface)

应用程序接口(API:application programming interface)是一组定义、程序及协议的集合,通过 API 接口实现计算机软件之间的相互通信。API 的一个主要功能是提供通用功能集。程序员通过使用 API 函数开发应用程序,从而可以避免编写无用程序,以减轻编程任务。

简单来说就是通过网络,规定了前后台信息交互规则的url链接,也就是前后台信息交互的媒介。

    http://127.0.0.1/books/
点赞,点踩 就是API接口
  • url:长得像返回数据的url链接

  • 请求方式:get、post、put、patch、delete
    • 采用get方式请求上方接口
  • 请求参数:json或xml格式的key-value类型数据
    • ak:6E823f587c95f0148c19993539b99295
    • region:上海
    • query:肯德基
    • output:json
	-早些年 前后端交互使用xml格式----》ajax:异步JavaScript和XML
-后来,随着json格式的出现,成了主流,直到现在
-以后:一定会出现,比json更高效的交互格式,更安全
  • 响应结果:json或xml格式的数据

    • 上方请求参数的output参数值决定了响应数据的格式
    • 数据
# xml格式
https://api.map.baidu.com/place/v2/search?ak=6E823f587c95f0148c19993539b99295&region=%E4%B8%8A%E6%B5%B7&query=%E8%82%AF%E5%BE%B7%E5%9F%BA&output=xml
'''中文会变成上面的样式,上下两个url是一样的意思'''
https://api.map.baidu.com/place/v2/search?ak=6E823f587c95f0148c19993539b99295&region=上海&query=肯德基&output=xml
#json格式
https://api.map.baidu.com/place/v2/search?ak=6E823f587c95f0148c19993539b99295&region=%E4%B8%8A%E6%B5%B7&query=%E8%82%AF%E5%BE%B7%E5%9F%BA&output=json https://api.map.baidu.com/place/v2/search?ak=6E823f587c95f0148c19993539b99295&region=上海&query=肯德基&output=json '''下方是返回的值'''
{
"status":0,
"message":"ok",
"results":[
{
"name":"肯德基(罗餐厅)",
"location":{
"lat":31.415354,
"lng":121.357339
},
"address":"月罗路2380号",
"province":"上海市",
"city":"上海市",
"area":"宝山区",
"street_id":"339ed41ae1d6dc320a5cb37c",
"telephone":"(021)56761006",
"detail":1,
"uid":"339ed41ae1d6dc320a5cb37c"
}
...
]
}

三、接口测试工具postman

postman介绍

作为后端,写好了接口,我们自己要测试通过,再给别人用。

而后端测试人员需要测试API接口的时候,总不可能在浏览器里面试用吧,所以有了专业的接口测试工具Postman

	-浏览器只能发送get请求,不能自动发送post,delete请求
-postman---》开源软件,只是谷歌浏览器的插件,越做好好,后来可以按装到操作系统上,再后来,收费
-postwoman
-很多很多其他的,不同公司用的也可能不一样,你只需要明白一个点,这个工具只是用来发送http请求

postman下载与使用

1、官方下载

https://www.postman.com/downloads/?utm_source=postman-home----》Postman-win64-Setup.exe

2、安装时,双击即可,马上就会出现下图界面

3、使用讲解

打开一个新的测试页面后界面如下,返回数据的窗口在没有发送请求之前是空的。

点击界面中间的Body,可以选择发送请求的方式,需要注意在使用form-data请求方式,即用form表单传输文件的时候,需要手动选择传输的数据类型。

这里是返回的结果

四、如何在浏览器中测试

我们需要在settings.py文件中注册rest_framework才能才浏览器中进行接口测试

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app01.apps.App01Config',
'rest_framework',
]

最新文章

  1. 有关DOM
  2. jQuery利用JSON数据动态生成表格
  3. eclipse导出jar包的方法
  4. iBus
  5. HTML <iframe> 标签
  6. Yii 获取验证码与Yii常用的URL
  7. MySQL的用户密码过期功能详解
  8. node.js(三)url处理
  9. 用Markdown来写作
  10. js 如何判断鼠标点击事件还是js代码调用
  11. “use strict” 严格模式使用(前端基础系列)
  12. ML01 机器学习后利用混淆矩阵Confusion matrix 进行结果分析
  13. c# 实现mysql事务
  14. sublime text 3 无法安装Package Control插件解决办法
  15. python练习题-day26
  16. git了解-使用笔记
  17. Spring MVC 全注解配置 (十一)
  18. 2501 矩阵距离 (bfs)
  19. pipenv知识积累
  20. 使用 X-Frame-Options 防止被iframe 造成跨域iframe 提交挂掉

热门文章

  1. 论文笔记 - MetaICL: Learning to Learn In Context
  2. python uiautomator
  3. Sqlite 安装操作使用
  4. TreeUtils工具类一行代码实现列表转树 实战Java8 三级菜单 三级分类 附视频
  5. cmd唤醒windows设置,并配置opsshd
  6. 搜索与图论篇——DFS和BFS
  7. Training: ASCII
  8. vscode分级文件夹
  9. 关于linux建立u盘legacy启动方式引导
  10. day27-过滤器Filter02