网站建设自己怎么做,品牌形象设计案例网站,动易 网站统计 首次打开,消防网站建设的风格Introasp.net core data protection 扩展#xff0c;基于 IDataProtector 扩展的数据保护组件#xff0c;自动化的实现某些参数的保护ParamsProtectionParamsProtection 是为了保护 asp.net core webapi 项目的某些参数而设计的#xff0c;也可以用来做一定程度上的反爬虫。… Introasp.net core data protection 扩展基于 IDataProtector 扩展的数据保护组件自动化的实现某些参数的保护ParamsProtectionParamsProtection 是为了保护 asp.net core webapi 项目的某些参数而设计的也可以用来做一定程度上的反爬虫。GetStarted安装 nuget 包 WeihanLi.DataProtection通过示例项目查看更多详细信息跑起来示例项目你可以直接在 sample 项目下运行 dotnet run 命令在浏览器中访问 /api/values 路径你会得到类似以下的响应结果原来的业务代码里你什么都不需要做还是直接返回原来的内容即可原来的返回内容如下因为在启动的时候已经设置了 id 参数应该被保护所以当你访问 /api/values/{id} 这个地址的时候如果没有设置 AllowUnprotectedParams 为 true 的话直接使用原始的 int 类型的 id 去访问就会得到一个 4xx(默认是412) 状态码的响应如果用从 /api/values 返回的 id 的值去访问就会正常的拿到响应。除此之外你可以设置被保护的值的过期时间通过设置一个比较短的过期时间来一定程度上的反爬虫有个不太友好的地方就是可能会一定程序上的影响用户体检如果用户打开一个页面长期没有操作就可能会导致某些操作可能会失败需要用户重新操作。你也可以是 POST 或 PUT 请求中使用被保护的值如果被保护的值已经过期你会从服务得到一个 4xx(默认 412) 的响应。More你可以设置更多参数来更适合你的使用你可以改变一些值来改变参数保护模式:设置 Enabled 为 false 以禁用参数保护修改 ProtectorPurpose 的值以改变 DataProtector 的 purpose设置 AllowUnprotectedParams 为 true 以允许原始参数的访问设置 InvalidRequestStatusCode 的值来改变不合法参数访问时响应的 Status Code修改 ExpiresIn 的值以改变已经保护的参数的值的过期时间设置 ProtectParams 的值来指定要进行参数保护的参数名称ContactContact me: weihanlioutlook.com原文地址:https://www.cnblogs.com/weihanli/p/webapi-params-protection.html.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com