首页
学习
活动
专区
圈层
工具
发布

.NET云原生应用实践(二):Sticker微服务RESTful API的实现

当然,也有些情况下POST并不是用来创建新的资源,而是用来执行某个任务,此时也可以用200 OK或者204 No Content返回 PUT、PATCH、DELETE方法,根据是否需要返回资源数据,来决定是应该返回...而在DeleteByIdAsync方法中,API会直接尝试删除指定Id的“贴纸”,如果贴纸不存在,则返回404,否则就是成功删除,返回204。...: ASP.NET Core Web API中的模型验证 ASP.NET Core Web API在一个Controller方法被调用前,是可以自动完成模型验证的。...在RESTful API的实现中,一个比较好的做法是采用JSON Patch,它是一套国际标准(RFC6902),它定义了JSON文档(JSON document)修改的基本格式和规范,而微软的ASP.NET...此外,ASP.NET Core Web API的功能也不仅仅局限于我们目前用到的这些,由于我们的重点不在ASP.NET Core Web API本身的学习上,所以这里也只会涵盖用到的这些功能,对ASP.NET

43710

Asp.Net Web API(二)

注意,如果你使用了ASP.NET MVC 已熟悉控制器,Web API控制器类似于MVC控制器,但是继承ApiController,而不是Controller类 ?...通过返回HttpResponseMessage而不是产品,我们可以控制HTTP响应消息,包括状态代码和位置标头的详细信息。  ...200(OK)与实体的描述该状态;如果删除依然挂起,则返回状态202(已接受);或状态与没有实体正文204(无内容)。...在这种情况下,DeleteProduct方法具有void返回类型,因此ASP.NET Web API自动转换此状态代码204(无内容) 运行测试   方法创建完毕后我们就可以运行服务端进行测试了 ?    ...上述测试我们发现我们的路由只是“api/{controler}”就成功返回了GetProducts方法中的数据,这也是ASP.NET Web API与ASP.NET MVC 之间的区别。

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

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

    ASP.NET Core Web API 中如何去使用,不会做过多的详细介绍。...在 ASP.NET Core Web API 中,我们可以通过在 Action 上添加 ProducesResponseType 特性来定义接口的返回状态码。...原来,在 ASP.NET Core 2.1 之后的版本中,对于 API 接口返回 400 的 HTPP 状态码会默认返回 ProblemDetails 对象,因为这里我们并没有将接口中的返回 BadRequest...同时,除了上面示例的接口中通过返回 OK 方法和 BadRequest 方法来表明接口的返回 HTTP 状态码,在 ASP.NET Core Web API 中还有下列继承于 ObjectResult...在 ASP.NET Core 2.2 及以后更新的 ASP.NET Core 版本中,我们可以通过 Nuget 去添加 Microsoft.AspNetCore.Mvc.Api.Analyze 这个包,

    1.6K20

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

    ASP.NET Core Web API 中如何去使用,不会做过多的详细介绍。...在 ASP.NET Core Web API 中,我们可以通过在 Action 上添加 ProducesResponseType 特性来定义接口的返回状态码。...原来,在 ASP.NET Core 2.1 之后的版本中,对于 API 接口返回 400 的 HTPP 状态码会默认返回 ProblemDetails 对象,因为这里我们并没有将接口中的返回 BadRequest...同时,除了上面示例的接口中通过返回 OK 方法和 BadRequest 方法来表明接口的返回 HTTP 状态码,在 ASP.NET Core Web API 中还有下列继承于 ObjectResult...在 ASP.NET Core 2.2 及以后更新的 ASP.NET Core 版本中,我们可以通过 Nuget 去添加 Microsoft.AspNetCore.Mvc.Api.Analyze 这个包,

    1.8K40

    Contact Manager Web API 示例CRUD 操作

    联系人管理器web API是一个Asp.net web api示例程序,演示了通过ASP.NET Web API 公开联系信息,并允许您添加和删除联系人,示例地址http://code.msdn.microsoft.com...下面的文章以这个示例讲解ASP.NET Web API的各方面知识: 1、CRUD操作: CURD 是 "Create, Read, Update, Delete" (新增、读取、更新、删除) 的简写,...默认,ASP.NET Web API Framework 会从请求主体 (request body)里的 route 与 复合(complex) 型别来取得简易的参数类型。...如果 DELETE 请求成功,你能回传状态 200 (OK) 描述该实体主体(即要删除的主体)的状态,或如果删除持续未处理回传状态 202 (Accepted) ,或没有实体主体回传状态 204 (No...我们范例会返回状态 204 (No Content)。

    1.2K90

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

    html 本文介绍的是使用ASP.NET Core建立Richardson成熟度为2级的伪RESTful web API, 本文介绍的是GET和POST....这是没有问题的,但是如果查询一个不存在的资源: ? 这就有问题了,如果查询不到资源,那么返回的应该是404 NOF FOUND 而不是200 OK....200 - OK 201 - Created,表示资源创建成功了 204 - No content,成功执行,但是不应该返回任何东西 400级别,表示客户端引起的错误: 400 - Bad request...但是Controller里提供了一些帮助方法返回IActionResult并指定特定的状态码,针对200,就是Ok()方法。 ? 这时就不需要手动返回JsonResult了。...的情况下,就该返回一个默认的格式,在ASP.NET Core 2.0里面就是application/json。

    2.1K10

    【译】.NET 7 预览版 1 中的 ASP.NET Core 更新

    在未来的预览版中,您可以期待在我们的 HTTP/3 支持中看到高级 TLS 功能和更多性能改进。 最小 API:添加对端点过滤器和路由分组的支持,作为最小 API 的核心原语。...我在最近一集 On .NET 中加入了 James Montemagno,以分解 .NET 7 和 .NET 7 中的 ASP.NET Core 中的所有内容: 以下是此预览版中新增内容的摘要: 最小的...我们的 .NET 7 路线图包含对最小 API 的防伪支持。...您现在可以将验证配置为使用相应的 JSON 属性名称,而不是使用新的 SystemTextJsonValidationMetadataProvider(或使用 Json.NET 时的 NewtonsoftJsonValidationMetadataProvider...用于 gRPC 服务的 RESTful API。没有重复! ASP.NET Core 使用名为 gRPC HTTP API 的库对此功能提供实验性支持。

    5.1K10

    .net core 自定义规范响应的中间件

    在本文中,我们将介绍如何使用 .NET Core 中的中间件来自定义规范响应,以便在 API 调用时返回统一的格式和错误信息。...首先,我们需要创建一个类来表示规范响应的格式,这个类可以包含以下属性: Code:响应的状态码,例如 200 表示成功,400 表示客户端错误,500 表示服务器错误等。...常用类 定义常用的类可以帮助我们标准化 ASP.NET Core 应用程序中的响应格式,提高代码重用性,并使前端更加轻松地处理所有响应。...结论 通过使用 ASP.NET Core 中间件和常用类,我们可以自定义 ASP.NET Core 应用程序中的响应格式,并标准化应用程序中的响应格式。...在开发 ASP.NET Core 应用程序时,我们应该始终考虑使用中间件和常用类来提高代码的可读性、可维护性和可重用性。

    75850

    使用ASP.NET Core 3.x 构建 RESTful API - 3.3 状态码、错误故障、ProblemDetails

    200 - Ok,表示请求成功; 201 - Created,请求成功并创建了资源; 204 - No Content,请求成功,但是不应该返回任何东西,例如删除操作。...故障确实会对API整体的可用性造成影响。 ProblemDetails 当ASP.NET Core 大约在 2.1 版本的时候,它引入了 ProblemDetails。...ProblemDetails是基于 RFC7807 这个规范,目的是让 HTTP 响应可以携带错误的详细信息,而不是只返回一个错误的状态码。...在 ASP.NET Core 2.2的时候,如果Controller使用了 [ApiController] 这个属性,那么 ProblemDetails 就是客户端错误码的标准响应。...在ASP.NET Core 3.x里面,同样也使用了 ProblemDetails。 看一个返回404的例子: ?

    2K20

    .NET 云原生架构师训练营(模块二 基础巩固 REST && RESTful)--学习笔记

    状态转化 Get Post Put Delete ASP .NET Core Web Api 是一个 RESTful Web 应用框架 RESTful API 设计 RESTful API 设计指南:http...status code error handling 内容 URI 状态码 结果 HTTP动词 获取问题列表 /api/v1/question 200 返回具体的资源结果 GET 创建问题 /api/...v1/question 201 返回创建的资源 POST 获取单个问题 /api/v1/question/1001 200/404 返回资源/不存在 GET 修改问题 /api/v1/question/...1001 201 返回修改的数据 PUT 修改问题 /api/v1/question/1001 201 返回修改的数据 PATCH 删除问题 /api/v1/question/1001 204 删除成功...Level 1: Level 1 层级的 API 引入了资源的概念。要执行对资源的操作,客户端发出指定要执行的操作和任何参数的 POST 请求。

    39910

    2019年6月18日 从CLR GC到CoreCLR GC看.NET Core对云原生的支持

    new操作符会返回对象的引用,就在返回这个引用之前,NextObjPtr指针的值会加上对象占用的字节数来得到一个新值,即下一个对象放入托管堆时的地址。 ?...如果未设置CPU限制,应用程序可以利用计算机上的所有核心。 有了这样的新策略,可以不需要启用Docker环境下的.NET Core应用的工作站GC的工作负载。...如果把GC限制中100MB限制中的50MB用于GC,而容器限制中剩余的100MB用于其他用途,那么内存消耗即为(50+100)/200=75%。...此值是CoreCLR使用的最大有效CPU核数。 默认情况下,ASP.NET Core应用程序启用了服务器GC(它不适用于控制台应用程序),因为它可以实现高吞吐量并减少跨核心的争用。...即使您明确指定使用服务器GC,工作站GC也将始终用于单核环境。

    1.2K40

    从 MVC 到使用 ASP.NET Core 6.0 的Minimal API

    2012 年,也许是由于 ReSTful API 的日益流行,借鉴了 ASP.NET MVC 的许多概念又引入了 ASP.NET Web API,这是对 WCF 的重大改进,使开发人员能够以更少的仪式构建...ASP.NET Core 6.0 旨在通过 Minimal API 弥合这一差距,以更少的仪式提供 ASP.NET MVC 的许多功能。...; 所述pattern指定路线的不同区段,并且允许指定的默认值。参数可以利用 ASP.NET 的路由约束语法[3]来限制接受的值。 对于 API,建议使用基于属性的路由[4]。...示例中,我们受益于返回类型到序列化 HTTP 200 (OK) 响应的隐式转换。...paymentRequest]) => { }); HTTP 响应 MVC 和 Minimal API 都会自动将您的返回类型序列化到响应正文并返回 HTTP 200 (OK) 响应,例如: //

    9.2K10

    跨域资源共享(CORS)在ASP.NET Web API中是如何实现的?

    在《通过扩展让ASP.NET Web API支持W3C的CORS规范》中,我们通过自定义的HttpMessageHandler自行为ASP.NET Web API实现了针对CORS的支持,实际上ASP.NET...“200, OK”的响应并添加CORS报头 27: //如果授权检验失败,返回一个状态为“400, Bad Request”的响应并指定授权失败原因 28: if...CORS系列文章 [1] 同源策略与JSONP [2] 利用扩展让ASP.NET Web API支持JSONP [3] W3C的CORS规范 [4] 利用扩展让ASP.NET Web API...支持CORS [5] ASP.NET Web API自身对CORS的支持: 从实例开始 [6] ASP.NET Web API自身对CORS的支持: CORS授权策略的定义和提供 [7] ASP.NET...Web API自身对CORS的支持: CORS授权检验的实施 [8] ASP.NET Web API自身对CORS的支持: CorsMessageHandler

    3.4K110

    看我如何快速拿下整个C段主机权限

    0x02 Getshell过程 网站基本信息探测: 目标站点:http://www.that****elos.com.br 服务器IP:189.**.**.204(巴西) 环境平台:ASP.NET 服务器系统...脚本文件,不支持PHP、ASPX 磁盘权限:C盘部分文件夹有可读/写权限,不能跨站 搞了这么久也是第一次遇到打750+补丁的2003机器,虽然知道利用提权EXP搞下的机率不大,但还是得尝试下不是,说不定就...当前机器IP地址为:189.**.**.204,远程端口号:65432,计算机名称:WEB200,使用meterpreter下的mimikatz法国神器抓到的目标系统明文密码如下,管理员哈希密码均无法破解...189.**.**.204这台服务器的Administrador密码为:w3b200r0x0271114,密码规律主要与主机名中的3位数字有关,与IP地址无关。...web200.test.net web201.test.net web202.test.net web203.test.net web204.test.net web205.test.net web206

    1.2K20
    领券