Flask 学习笔记-第十五章-应用编程接口

(Rich Internet Application,RIA)的架构。

在RIA中,服务器的主要功能(有时是唯一功能)是为客户端提供数据存取服务。

在这种模式中,服务器变成了Web服务或应用编程接口(Application Programming Interface,API)。

表现层状态转移(Representational State Transfer,REST)架构崭

露头角,成为Web程序的新宠,因为这种架构建立在大家熟识的万维网

基础之上。

Web服务的REST架构方式,并列出了6个符合这一架构定义的特征。

客户端服务器

客户端和服务器之间必须有明确的界线。

无状态

客户端发出的请求中必须包含所有必要的信息。服务器不能在两次请求

之间保存客户端的任何状态。

缓存

服务器发出的响应可以标记为可缓存或不可缓存,这样出于优化目的,

客户端(或客户端和服务器之间的中间服务)可以使用缓存。

接口统一

客户端访问服务器资源时使用的协议必须一致,定义良好,且已经标准

化。REST Web服务最常使用的统一接口是HTTP协议。

系统分层

在客户端和服务器之间可以按需插入代理服务器、缓存或网关,以提高

性能、稳定性和伸缩性。

按需代码

客户端可以选择从服务器上下载代码,在客户端的环境中执行。

资源是REST架构方式的核心概念。在REST架构中,资源是程序中你要

着重关注的事物。例如,在博客程序中,用户、博客文章和评论都是资

源。

每个资源都要使用唯一的URL表示。还是以博客程序为例,一篇博客文

章可以使用URL /api/posts/12345表示,其中12345是这篇文章的唯一标

识符,使用文章在数据库中的主键表示。URL的格式或内容无关紧要,

只要资源的URL只表示唯一的一个资源即可。

某一类资源的集合也要有一个URL。博客文章集合的URL可以

是/api/posts/,评论集合的URL可以是/api/comments/。

API还可以为某一类资源的逻辑子集定义集合URL。

表示资源集合的URL习惯在末端加上一个斜线,代表一种"文件夹"结构。

时间: 2024-10-11 13:43:07

Flask 学习笔记-第十五章-应用编程接口的相关文章

学习笔记 第十五章 JavaScript基础

第15章   JavaScript基础 [学习重点] 了解JavaScript基础知识 熟悉常量和变量 能够使用表达式和运算符 正确使用语句 能够掌握数据类型和转换的基本方法 正确使用函数.对象.数组等核心知识和技法 能够编写简单的脚本,解决网页中常见特效和互动效果 15.1  JavaScript入门 JavaScript是一种轻量级.解释型的Web开发语言.现代浏览器都已嵌入了JavaScript引擎./sc 15.1.1 在网页中插入JavaScript代码 使用<script>标签,可

《JAVA编程思想》学习笔记——第十五章 泛型

在面相对象编程中,多态算是一种泛化机制. 泛型实现了参数化类型的概念. 泛型的主要目的之一就是用来指定容器要持有什么类型的对象,而且由编译器来保证类型的正确性. 元组 仅一次方法调用就能返回多个对象,你应该经常需要这样的功能吧.可是return语句只允许返回单个对象.因此,解决方法就是创建一个对象,用它来持有想要返回的多个对象.例: public class TwoTuple<A,B> {} public class ThreeTuple<A,B,C> extents TwoTup

JavaScript高级程序设计学习笔记第十五章--使用Canvas绘图

一.基本用法 1.要使用<canvas>元素,必须先设置其 width 和 height 属性,指定可以绘图的区域大小.能通过 CSS 为该元素添加样式,如果不添加任何样式或者不绘制任何图形,在页面中是看不到该元素的. 2.要在这块画布(canvas)上绘图,需要取得绘图上下文.而取得绘图上下文对象的引用,需要调用getContext()方法并传入上下文的名字.在使用<canvas>元素之前,首先要检测 getContext()方法是否存在,这一步非常重要.检测可以用如下方法进行:

day7-Python学习笔记(十五)网络编程

import urllib.requestimport json,requests #发送get请求# url = 'http://api.nnzhp.cn/api/user/stu_info?stu_name=小黑马'# req = requests.get(url) #发送get请求# print(req.text) #获取结果# print(req.json()) #获取结果直接就是字典,必须返回的是json串,才能用.json方法. #发送post请求# url = 'http://ap

Android学习笔记(十五)——碎片的生命周期(附源码)

碎片的生命周期 点击下载源码 与活动类似,碎片具有自己的生命周期.理解了碎片的生命周期后,我们可以在碎片被销毁时正确地保存其实例,在碎片被重建时将其还原到前一个状态. 1.使用上一篇的项目Fragments,在Fragment1.java文件中添加如下代码: package net.zenail.Fragments; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.Fragm

VSTO学习笔记(十五)Office 2013 初体验

原文:VSTO学习笔记(十五)Office 2013 初体验 Office 2013 近期发布了首个面向消费者的预览版本,我也于第一时间进行了更新试用.从此开始VSTO系列全面转向Office 2013平台,即VSTO 5.0. 本系列所有测试代码均在Visual Studio 2012 Ultimate RC + Office 2013 Professional Plus x64 Preview 上测试通过 为了配合Windows 8,微软的很多软件风格都逐渐Metro化,Office作为拳头

马哥学习笔记二十五——ISCSI协议,架构及其安装配置

ISCSI监听在tcp/3260端口 iSCSI Target:iscsi-target-utils 客户端认正方式: 1.基于IP 2.基于用户,CHAP tgtadm:命令行工具,模式化命令 --mode 常用模式:target,logicalunit,account target --op new.delete.show.update.bind.unbind logicalunit --op new.delete account --op new.delete.bind.unbind --

Android学习笔记二十五之ListView多布局实现

Android学习笔记二十五之ListView多布局实现 这一节是介绍ListView这个控件的最后一节,实现一个Item的多布局.像我们经常在用的各种即时通讯工具,QQ.微信等,假设他们的会话界面是ListView实现的,那么ListView就有多种Item布局,这一节,我们就来实现一个ListView的多种Item. 要实现ListView里面有多种Item,就要重写适配器的两个方法getViewTypeCount()和getItemViewType(int position),第一个方法是

【Unity 3D】学习笔记四十五:游戏实例——击垮围墙

用这个游戏实例来总结之前我们复习的所有关于物理引擎的知识.在游戏中,发送一个球形的炮弹来击垮前面的墙.给炮弹与墙都添加了刚体组件,给炮弹绑定了粒子系统,并且在炮弹的粒子动画中添加了5组不同的颜色,显示移动轨迹. using UnityEngine; using System.Collections; public class Script_06_14 : MonoBehaviour { //炮弹对象 private GameObject obj; //准心贴图 public Texture te