服务器类型

2.restfulAPI

做~自己de王妃 提交于 2020-02-19 14:56:46
RESTFUL是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务使能接口的场景,实现第三方OTT调用移动网络资源的功能,动作类型为新增、变更、删除所调用资源。 REST(英文:Representational State Transfer,简称REST)描述了一个架构样式的网络系统,比如 web 应用程序。 在目前主流的三种Web服务交互方案中,REST相比于SOAP(Simple Object Access protocol,简单对象访问协议)以及XML-RPC更加简单明了,无论是对URL的处理还是对Payload的编码,REST都倾向于用更加简单轻量的方法设计和实现。值得注意的是REST并没有一个明确的标准,而更像是一种设计的风格。 原则条件 REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。 Web 应用程序最重要的 REST 原则是,客户端和服务器之间的交互在请求之间是无状态的。从客户端到服务器的每个请求都必须包含理解请求所必需的信息。如果服务器在请求之间的任何时间点重启,客户端不会得到通知。此外,无状态请求可以由任何可用服务器回答,这十分适合云计算之类的环境。客户端可以缓存数据以改进性能。 在服务器端,应用程序状态和功能可以分为各种资源

常用 HTTP 状态码

谁都会走 提交于 2020-02-19 09:28:35
下面是列举的我在项目中用到过的一些 HTTP 状态码,当然,在具体的使用中并不是用到的状态码越多越好,需要结合自己项目情况来选用适合自己的 HTTP 状态码。 HTTP 状态码 含义说明 200 - OK 请求已成功,请求所希望的响应头或数据体将随此响应返回。出现此状态码是表示正常状态。(成功,服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页) 201 - Created 请求已经被实现,而且有一个新的资源已经依据请求的需要而建立,且其 URI已经随 Location 头信息返回。假如需要的资源无法及时建立的话,应当返回'202 Accepted'。(已创建,请求成功并且服务器创建了新的资源) 202 - Accepted 服务器已接受请求,但尚未处理。正如它可能被拒绝一样,最终该请求可能会也可能不会被执行。在异步操作的场合下,没有比发送这个状态码更方便的做法了。(已接受,服务器已接受请求,但尚未处理) 204 - No Content 服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。 如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产生任何文档视图上的变化

python-网络编程

久未见 提交于 2020-02-19 05:21:44
一、客户端服务器架构 服务器就是一系列硬件或软件,为一个或多个客户端(服务的用户)提供所需的“服务”。它存在唯一目的就是等待客户端的请求,并响应它们(提供服务),然后等待更多请求。 硬件服务器的一个例子就是文件服务器。这些通常都是拥有庞大通用存储容量的计算机,可以被客户端远程访问。客户端计算机会挂载服务器计算机上的磁盘,看起来好像这个磁盘就在本地计算机上一样。 软件服务器提供的主要服务包括程序执行、数据传输检索、聚合、更新,或其他类型的编程或数据操作。现在一个更常见的软件服务器就是 Web 服务器。如果个人或公司想要运行自己的 Web 服务器,那么必须拥有一台或多台计算机,在上面安装希望提供给用户的 Web 页面和 Web 应用程序,然后启动 Web 服务器。 数据库服务器是另一种类型的软件服务器。它们接受客户端的存储或检索请求,响应请求,然后等待更多的事务。 二、客户端/服务器网络编程 在服务器响应客户端请求之前,必须进行一些初步的设置流程来为之后的工作做准备。首先会创建一个通信端点,它能够使服务器监听请求。一旦一个通信端点已经建立,监听服务器就可以进入无限循环中,等待客户端的连接并响应它们的请求。 客户端比服务器端更简单,客户端所需要做的只是创建它的单一通信端点,然后建立一个到服务器的连接。然后,客户端就可以发出请求,该请求包括任何必要的数据交换。 三、套接字

如何高效地远程部署?自动化运维利器 Fabric 教程

試著忘記壹切 提交于 2020-02-18 18:43:01
关于 Python 自动化的话题,在 上一篇文章 中,我介绍了 Invoke 库,它是 Fabric 的最重要组件之一。Fabric 也是一个被广泛应用的自动化工具库,是不得不提的自动化运维利器,所以,本文将来介绍一下它。 Fabric 主要用在应用部署与系统管理等任务的自动化,简单轻量级,提供有丰富的 SSH 扩展接口。在 Fabric 1.x 版本中,它混杂了本地及远程两类功能;但自 Fabric 2.x 版本起,它分离出了独立的 Invoke 库,来处理本地的自动化任务,而 Fabric 则聚焦于远程与网络层面的任务。 为了做到这点,Fabric 主要依赖另一大核心组件 Paramiko,它是基于 SSH 协议的远程控制模块,Fabric 在其基础上封装出了更加友好的接口,可以远程执行 Shell 命令、传输文件、批量操作服务器、身份认证、多种配置与设置代理,等等。 一、Fabric 的版本区分 Python 2 版本已经被官宣在今年元旦“退休”了,未来只会是 Python 3 的舞台。为了适应 Python 版本的非兼容性迁移,很多项目也必须推出自己的新版本(兼容或只支持 Python 3),其中就包括本文的主角 Fabric。 Fabric 自身存在着 2 个大版本:Fabric 1 和 Fabric 2,而在这个库的基础上,还有两个很容易混淆的相关库:Fabric2 和

jsp九大内置对象

此生再无相见时 提交于 2020-02-18 08:04:03
jsp九大内置对象 JSP中一共预先定义了9个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception 1、request对象javax.servlet.http.HttpServletRequest request对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对 象的作用域为一次请求。 当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。首先,将获取的字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象如下 Request常用的方法: getParameter (String strTextName ) 获取表单提交 的信息. getProtocol() 获取客户使用的协议。 String strProtocol=request.getProtocol(); getServletPath() 获取客户提交信息的页面。String strServlet=request.getServletPath(); getMethod() 获取客户提交信息的方式 String strMethod=request

JSP九大内置对象的作用和用法总结?

陌路散爱 提交于 2020-02-18 08:03:25
JSP九大内置对象的作用和用法总结? 1、request对象javax.servlet.http.HttpServletRequest request对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对 象的作用域为一次请求。 当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。首先,将获取的字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象如下 Request常用的方法:getParameter(String strTextName) 获取表单提交的信息. getProtocol() 获取客户使用的协议。 String strProtocol=request.getProtocol(); getServletPath() 获取客户提交信息的页面。String strServlet=request.getServletPath(); getMethod() 获取客户提交信息的方式 String strMethod=request.getMethod(); getHeader() 获取HTTP头文件中的accept,accept-encoding和Host的值,String strHeader=request

JSP九大内置对象的作用和用法总结?

萝らか妹 提交于 2020-02-18 08:02:53
JSP中一共预先定义了9个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception 1、request对象javax.servlet.http.HttpServletRequest request对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对 象的作用域为一次请求。 当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。首先,将获取的字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象如下 Request常用的方法:getParameter(String strTextName) 获取表单提交的信息. getProtocol() 获取客户使用的协议。 String strProtocol=request.getProtocol(); getServletPath() 获取客户提交信息的页面。String strServlet=request.getServletPath(); getMethod() 获取客户提交信息的方式 String strMethod=request.getMethod();

jsp九大内置对象

你说的曾经没有我的故事 提交于 2020-02-18 08:02:40
JSP中一共预先定义了9个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception 1、request对象javax.servlet.http.HttpServletRequest request对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对 象的作用域为一次请求。 当Request对象获取客户提交的汉字字符时,会出现乱码问题,必须进行特殊处理。首先,将获取的字符串用ISO-8859-1进行编码,并将编码存发岛一个字节数组中,然后再将这个数组转化为字符串对象如下 Request常用的方法:getParameter(String strTextName) 获取表单提交的信息. getProtocol() 获取客户使用的协议。 String strProtocol=request.getProtocol(); getServletPath() 获取客户提交信息的页面。String strServlet=request.getServletPath(); getMethod() 获取客户提交信息的方式 String strMethod=request.getMethod();

HTTP协议状态码详解(HTTP Status Code)

ぐ巨炮叔叔 提交于 2020-02-17 18:34:03
使用ASP.NET/PHP/JSP 或者javascript都会用到http的不同状态,一些常见的状态码为: 200 – 服务器成功返回网页 404 – 请求的网页不存在 503 – 服务不可用 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码。 代码 说明 100 (继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。 101 (切换协议) 请求者已要求服务器切换协议,服务器已确认并准备切换。 2xx (成功) 表示成功处理了请求的状态代码。 代码 说明 200 (成功) 服务器已成功处理了请求。 通常,这表示服务器提供了请求的网页。 201 (已创建) 请求成功并且服务器创建了新的资源。 202 (已接受) 服务器已接受请求,但尚未处理。 203 (非授权信息) 服务器已成功处理了请求,但返回的信息可能来自另一来源。 204 (无内容) 服务器成功处理了请求,但没有返回任何内容。 205 (重置内容) 服务器成功处理了请求,但没有返回任何内容。 206 (部分内容) 服务器成功处理了部分 GET 请求。 3xx (重定向) 表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。 代码 说明 300 (多种选择) 针对请求,服务器可执行多种操作。 服务器可根据请求者 (user agent) 选择一项操作

Windows Azure使用必读

元气小坏坏 提交于 2020-02-17 14:52:25
目前在IT界,云这个概念的第一意思不再是词典里的解释了。不过它们还是有相同点的——也许确实会酝酿出一块大蛋糕,可也是飘在天上,众神分食之,与我等P民无关。所谓云,不过是网络时代发展到一定阶段的必然产物,而并非划时代的技术质变,so,我一直保持既不排斥亦不主动接触的立场。but,最近我有个个人服务器快到期了,于是也打算尝试一番。 现在比较知名的云服务有很多,国内的首推阿里云,而作为.Neter, Windows Azure 也是一种选择。本人同时申请了两者的免费试用体验,对于阿里云,在申请阶段博主被折腾得够呛,后面可能会写一篇吐槽的随笔;相对来说,Windows Azure价格昂贵,不过既然是免费体验(90天),试试亦无妨。 目前Windows Azure在国内由世纪互联运营,比较坑的是很多服务国内还没有开始运营。另外不能使用微软账号登录Windows Azure管理门户,而是使用在注册域名时填写的用户ID。假如您注册的域名是xxxx.partner.onmschina.cn,那么您的登录账号就是“用户ID@xxxx.partner.onmschina.cn”。不出意外的话,申请之后两三天,你就能收到一份告知通过的邮件。 前几天又去Windows Azure中国首页看了下,发现官网已经不再接受新的试用申请,应该说博主搭了一趟末班车,运气!(截止到博主发文,Windows