首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ASP.NET Core 2.0 建立规范的 REST API -- GET 和 POST

Core建立Richardson成熟度为2级的伪RESTful web API, 本文介绍的是GET和POST....状态 状态是非常重要的,因为只有状态会告诉API的消费者: 请求是否如预期的成功,或者失败 如果出现了错误,谁该为这个错误负责 下面再列举一下web API会用到的状态: 200级别,表示成功:...405 - Method not allowed,这就是当我们尝试发送请求给某个资源,使用的HTTP方法却是不允许的,例如使用POST api/countries, 而该资源只实现了 GET,所以POST...当请求的media type不可用的时候,并且消费者不支持默认格式,这时服务器就应该返回 406 Not Acceptable 状态ASP.NET Core 支持输出和输入两种格式化器。...这个代码很简单,数据是请求的body带进来的。 需要注意的是返回什么,如果POST操作执行成功的话,标准的做法是返回201 Created 状态

1.5K10

渗透基础之浅谈HTTP请求(小白文)

2、状态 状态:客户端发送请求到服务端返回的状态,HTTP协议中状态以三位数字组成,以第一位数字定义响应类别 常见的状态如下(重点) 200 客户端请求成功,是最常见的状态 302 重定向。...用于告诉客户端所访问的资源已被转移 404 请求资源不存在‍ 400 客户端请求有语法错误,不能被服务器所理解 401 请求未授权‍‍ 403 服务器收到请求,但是拒绝服务 500 服务器内部错误 503...常见的HTTP请求方法 GET POST HEAD PUT DELETE TRACE CONNECT OPTIONS 拿例1为例子请求为GET请求,所提交的以明文显示 GET 资源发送请求,明文提交...,服务器只接受程序员设计好的格式,否则就会报错 HEAD 与GET一致,只返回响应头信息 POST 资源提交数据并请求处理(如文件上传/表单提交) PUT 资源上传新内容 DELETE 删除URL指定资源...HEAD: 只请求页面的首部。 POST请求服务器接受所指定的文档作为对所标识的URI的新的从属实体。 PUT: 客户端服务器传送的数据取代指定的文档的内容。

97750
您找到你想要的搜索结果了吗?
是的
没有找到

REST 入门介绍

或许大家手边的.NET系统整合都还是使用WCF(甚至Web Service)进行跨主机沟通,但是当微软在ASP.NET MVC 4 Beta里也开始推广REST架构的ASP.NET Web API。...如果没有先了解 RESTful,那接下去的内容还真有点硬,像是专业名词,例如,你在 ASP.NET Web API 文件中可以看到大量的 Resource (资源) 这个单字,URI 还能理解,跟 Resource...另一常用的例子是填写表单,例如,登入表单,想进行登入动作,就必须先发送账号与密码给某一资源,此资源会验证你所传送的数据是否正确,再进行后续动作。...我们发送信息给资源的行为在 HTTP 规范中称之为 POST。...在 Julie Lerman's 的 How I see Web API 一文中,用了一张图来简明说明 Web API: ? An Introduction to ASP.NET Web API

1.1K80

ASP.NET Core 2.0 建立规范的 REST API -- 预备知识

状态: 客户端和服务段的通信必须是无状态的, 状态应包含在请求里的. 也就是说请求里要包含服务端需要的所有的信息, 以便服务端可以理解请求并可以创造上下文. 3....缓存: 缓存约束派生于无状态约束, 它要求服务端返回的响应必须明确表明是可缓存的还是不可缓存的. 6. 按需编码: 这允许客户端可以服务端访问特定的资源而无须知晓如何处理它们....例如这两个查询: POST http://host/api/authors POST http://host/api/authors/{id} 2级, 动词: 正确使用了HTTP动词, 状态也正确的使用了...Web API, 但并不是直接支持RESTful的 Web API....每个中间件可以在它被调用之前和之后执行可选的逻辑, 同时也可以决定该请求是否可以被送到管道的下一个中间件那里. 请求在中间件里的流图如下: ? 看一下这个例子: ?

1.6K00

.NET工作准备--04ASP.NET

POST请求把表单数据放在HTTP请求体中,没有长度的限制.详细解释如下5条: 设计目标不同,GET作为服务器申请资源的请求POST作为服务器发送数据的请求; GET请求在提交表单数据,会将其添加到...ASCII字符,而POST却可以是整个ISO10646字符集; 对于ASP.NET,当新建一个表单,默认的请求方式是POST....在通常情况下,一旦某个请求对应到一个ASP.NET页面,一个直接或者间接继承自System.Web.UI.Page类型的对象就会初 始化,并且开始执行页面生存周期中的所有步骤。...而把每一个访问者的数据保存在服务器代价太大,asp.net对这个问题的解决方法就是页面状态的保存:ViewState机制(Java 中的Page); Asp.net服务器空间Control继承名为....保证在重启Web应用程序后仍能保留会话状态,并可使会话状态应用于多个Web服务器; sqlserver:() 安装状态数据库systemroot\Microsoft.Net\Framework\

2K50

ASP.NET Core 基础知识】--前端开发--使用ASP.NET Core和JavaScript进行通信

AJAX的出现改变了Web开发的方式,使得网页变得更加动态、交互性更强,用户体验得到了极大的提升。 核心原理 传统的Web页面在与服务器交互,通常是通过整个页面的刷新来实现。...当页面加载完成,JavaScript代码将/api/user发送一个GET请求,获取用户信息。成功获取到数据后,我们将用户信息显示在页面上的userInfo div中。...其核心原理包括: 实时双向通信:SignalR允许服务器端代码主动推送消息到连接的客户端,同时也支持客户端服务器端发送消息。...无状态通信 RESTful API是无状态的,这意味着每个请求都应该包含足够的信息,以便服务器可以理解并处理该请求,而不依赖于之前的请求状态。这使得RESTful API更容易扩展和管理。...您可以发送HTTP请求来测试GET、POST、PUT和DELETE操作,并验证API的行为。

7500

Asp.Net Web API(二)

”开头,为了创建一个新产品,这个客户端将发送一个HTTP Post请求。...在Web API中复杂类型的参数是请求消息体中反序列化得到的,因此,我们期待客户端发送XML或JSON格式的一个产品对象的序列号表现形式       此实现会工作,但它还很不完整。...包含以下内容:        响应代码:在默认情况下,这个Web API框架设置响应状态为200(OK)。...但是根据这个HTTP/1.1协议,当POST请求在创建一个资源,这个服务端应该回复状态201(Created)。...默认情况下,ASP.NET Web API框架路由获取简单的参数类型,请求正文获取复杂的类型。 第五个方法:删除产品,在控制器添加代码如下。

1.9K10

Asp.net web api 知多少

它是 ASP.NET 平台的核心部分。能被MVC或者其他类型的web应用使用。同时它也可以用作独立的web服务应用程序。...ASP.NET WEB API 功能 它支持基于约定的CRUD操作因为它支持HTTP 动词 GET, POST, PUT , DELETE。 响应包含http状态和Accept header。...当您要通过HTTP创建面向资源的服务选择WEB API,因为其可以使用完整的 HTTP的特性(如URI,请求/响应头,缓存,版本控制,各种内容格式)。...WEB API请求映射到Http动词对应的action;MVC 的请求直接映射到对应的action name。 ASP.NET WEB API是新的框架和ASP.NET框架核心的一部分。...ASP.NET WEB API 路由与 ASP.NET MVC 路由有什么区别? Ans. ASP.NET MVC 与 ASP.NET WEB API 使用路由来监控传入的请求

4.8K50

HTTP协议漫谈

HTTP1.0最大的改变是引入了POST方法,使得客户端通过HTML表单向服务器发送数据成为可能,这也是WEB应用程序的一个基础。...HTTP请求(HTTP Request) 所谓的HTTP请求,也就是Web客户端Web服务器发送信息,这个信息由如下三部分组成: 1.请求行 2.HTTP头 3.内容...因此就像Get和Post其名称所示那样,Get用于服务器上取内容,虽然可以通过QueryString服务器发信息,但这违背了Get的本意,QueryString中的信息在HTTP看来仅仅是获取所取得内容的一个参数而已...而Post是由客户端服务器端发送内容的方式。因此具有请求的第三部分:内容。...对于HTTP版本没有什么好说的,而状态值得说一下,网上对于每个具体的HTTP状态所代表的含义都有解释,这里说一下分类。

66960

HTTP协议漫谈

HTTP1.0最大的改变是引入了POST方法,使得客户端通过HTML表单向服务器发送数据成为可能,这也是WEB应用程序的一个基础。...HTTP请求(HTTP Request) 所谓的HTTP请求,也就是Web客户端Web服务器发送信息,这个信息由如下三部分组成: 1.请求行 2.HTTP头 3.内容...因此就像Get和Post其名称所示那样,Get用于服务器上取内容,虽然可以通过QueryString服务器发信息,但这违背了Get的本意,QueryString中的信息在HTTP看来仅仅是获取所取得内容的一个参数而已...而Post是由客户端服务器端发送内容的方式。因此具有请求的第三部分:内容。...对于HTTP版本没有什么好说的,而状态值得说一下,网上对于每个具体的HTTP状态所代表的含义都有解释,这里说一下分类。

749130

HTTP 协议漫谈

HTTP1.0最大的改变是引入了POST方法,使得客户端通过HTML表单向服务器发送数据成为可能,这也是WEB应用程序的一个基础。...HTTP请求(HTTP Request) 所谓的HTTP请求,也就是Web客户端Web服务器发送信息,这个信息由如下三部分组成: 1.请求行 2.HTTP头 3.内容 一个典型的请求行比如: GET...因此就像Get和Post其名称所示那样,Get用于服务器上取内容,虽然可以通过QueryString服务器发信息,但这违背了Get的本意,QueryString中的信息在HTTP看来仅仅是获取所取得内容的一个参数而已...而Post是由客户端服务器端发送内容的方式。因此具有请求的第三部分:内容。...对于HTTP版本没有什么好说的,而状态值得说一下,网上对于每个具体的HTTP状态所代表的含义都有解释,这里说一下分类。

622110

入门:添加一个支持获取单一资源以及支持POST,PUT和DELETE方法

这个入门文章主要演示在ASP.NET MVC3网站宿主,主要演示如何在一个Web API上允许更新: 如何检索一个特定项的资源 如何在API上启用HTTP POST, PUT和DELETE方法 如何通过...如果你的请求API是http://localhost:9000/api/contacts/1 的ID将被设置为1,Web API支持将模板参数自动转换为原生类型int。...4、以Json格式发送数据 Web Api允许以多个格式发送内容,下面是使用fiddler发送json的POST 运行项目 启动Fiddler并切换到“Request Builder” 选择“POST...>8New Person2 6、从一个简单的HTML表单发送内容 Web API包含HTML...表单的内容发送的直接支持,下面,你添加一个ContactsContrller和相应的View,通过一个HTML表单向Web API发送请求并创建一个Contact 右键单击项目并选择添加Contrller

1.3K70

ASP.NET Core 2.0 建立规范的 REST API -- 预备知识 + 项目准备

例如这两个查询: POST http://host/api/authors POST http://host/api/authors/{id} 2级, 动词: 正确使用了HTTP动词, 状态也正确的使用了...Web API, 但并不是直接支持RESTful的 Web API....当发送一个请求后, HTTP机制提供的响应总是带着一个状态, 这些状态主要有: 1xx, 用于通知报告. 2xx, 表示响应是成功的, 例如 200 OK, 201 Created, 204 No...默认情况下, ASP.NET Core 项目不提供状态的细节信息, 但是通过启用StatusCodePagesMiddleware中间件, 我们可以启用状态细节信息: 然后当我们访问一个不存在的路由..., 就会返回以下信息: 我们也可以自定义返回的状态信息: OK, 预备知识先介绍到这, 其它相关的知识在建立API的时候穿插着讲吧.

2.6K72

ASP.NET Core Web API 集成测试中使用 Bearer Token

在 ASP.NET Core Web API 集成测试一文中, 介绍了ASP.NET Core Web API的集成测试. ...在那里使用了测试专用的Startup类, 里面的配置和开发时有一些区别, 例如里面去掉了用户身份验证相关的中间件. 但是有些被测试的行为里面需要用到身份/授权信息....所以本文就介绍一下在API集成测试中发送请求使用Bearer Token作为Authorization Header的情况....测试身份验证中间件 被测试系统使用了身份中间件: app.UserAnthentication(), 我们也可以测试一下这个中间件的功能, 如果Token不正确的话, 就应该返回401 UnAuthorized状态...这个测试代码很简单, 就是设置了一个不正确的token, 并Assert返回状态是401. 该测试会通过: ? 文章略短, 就介绍到这.

88730

HTTP协议详解以及URL具体访问过程

答:因为看书看博客资料都遇到过着两个名词,第一次遇到是在学习API的时候,那时候是一脸懵逼,不是怎么区分,感觉看过去都是一串网址呀!事实并非如此。...:   1、Host:(发送请求,该头域是必需的)主要用于指定被请求资源的Internet主机和端口号,它通常HTTP URL中提取出来的。...提供了Request的上下文信息的服务器,告诉服务器哪个链接过来的,比如从主页上链接到一个朋友那里,他的服务器就能够HTTP Referer中统计出每天有多少用户点击主页上的链接访问他的网站...-   第一个和最后一个字节:bytes=0-0,-1   同时指定几个范围:bytes=500-600,601-999   但是服务器可以忽略此请求头,如果无条件GET包含Range请求头,响应会以状态...301和302状态都表示重定向,就是说浏览器在拿到服务器返回的这个状态后会自动跳转到一个新的URL地址,这个地址可以响应的Location首部中获取(用户看到的效果就是他输入的地址A瞬间变成了另一个地址

2.6K40

学习前端前必知的——HTTP协议详解

状态   Response 消息中的第一行叫做状态行,由HTTP协议版本号, 状态状态消息 三部分组成。   ...HTTP/1.1中定义了5类状态状态由三位数字组成,第一个数字定义了响应的类别   1XX  提示信息 - 表示请求已被成功接收,继续处理   2XX  成功 - 表示请求已被成功接收,理解,接受...  200 OK   最常见的就是成功响应状态200了, 这表明该请求被成功地完成,所请求的资源发送回客户端   如下图, 打开博客园首页 ?   ...,比如从主页上链接到一个朋友那里,他的服务器就能够HTTP Referer中统计出每天有多少用户点击主页上的链接访问他的网站。   ...Host(发送请求,该报头域是必需的)   作用: 请求报头域主要用于指定被请求资源的Internet主机和端口号,它通常HTTP URL中提取出来的   例如: 我们在浏览器中输入:http://

55920

:第十五章 - 传统开发模式下的 axios 使用入门

这一章会涉及到简单的前后端的数据交互,作为一名 .NETer,本篇文章将采用 ASP.NET Core Web API 作为后端服务,你可以根据自己的喜好进行选择。...这些内容并不会在本篇文章中展现,如果你需要详细了解,你可以查看另一个系列的文章(ASP.NET Core 项目实战)那里会介绍一些关于 ASP.NET Core 项目的开发,两个系列相辅相成,后续所有涉及到前后端的交互开发...例如,在定义 restful 接口,我们一般会根据 http 响应状态去反映接口的调用是否成功。...在每一个通过 axios 发起请求的 then 回掉方法中,我们都需要对获取到响应状态进行判断,判断接口的调用是否成功。   ...例如,当调用接口不成功,http 响应状态为 400,同时返回错误信息,我们完全可以在拦截器中进行判断,当所有的接口响应状态为 400 ,弹出后端返回的错误信息。

1.4K30

或许是你应该了解的一些 ASP.NET Core Web API 使用小技巧

在本篇文章中,将列举一些在使用 ASP.NET Core Web API 构建接口服务使用到的一些小技巧,因才疏学浅,可能会存在不对的地方,欢迎指出。   ...HTTP 状态为 200 或是 400,当状态为 200 ,代表数据获取成功,接口可以正常返回数据,当状态为 400 ,则代表接口访问出现问题,此时则返回错误信息对象。   ...在 ASP.NET Core Web API 中,我们可以通过在 Action 上添加 ProducesResponseType 特性来定义接口的返回状态。...同时,除了上面示例的接口中通过返回 OK 方法和 BadRequest 方法来表明接口的返回 HTTP 状态,在 ASP.NET Core Web API 中还有下列继承于 ObjectResult...三、总结    在本篇文章中,主要介绍了一些在使用 ASP.NET Core Web API 的过程中使用到的一些小技巧,以及在以前踩过坑后的一些解决方案,如果对你能有一点的帮助的话,不胜荣幸。

1.2K20

或许是你应该了解的一些 ASP.NET Core Web API 使用小技巧

在本篇文章中,将列举一些在使用 ASP.NET Core Web API 构建接口服务使用到的一些小技巧,因才疏学浅,可能会存在不对的地方,欢迎指出。   ...HTTP 状态为 200 或是 400,当状态为 200 ,代表数据获取成功,接口可以正常返回数据,当状态为 400 ,则代表接口访问出现问题,此时则返回错误信息对象。   ...在 ASP.NET Core Web API 中,我们可以通过在 Action 上添加 ProducesResponseType 特性来定义接口的返回状态。...同时,除了上面示例的接口中通过返回 OK 方法和 BadRequest 方法来表明接口的返回 HTTP 状态,在 ASP.NET Core Web API 中还有下列继承于 ObjectResult...三、总结    在本篇文章中,主要介绍了一些在使用 ASP.NET Core Web API 的过程中使用到的一些小技巧,以及在以前踩过坑后的一些解决方案,如果对你能有一点的帮助的话,不胜荣幸。

1.4K40
领券