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

再说表单验证,在Web Api中使用ModelState进行接口参数验证

写在前面 上篇文章中说到了表单验证的问题,然后尝试了一下用扩展方法实现链式编程,评论区大家讨论的非常激烈也推荐了一些很强大的验证插件。...其中一位园友提到了说可以使用MVC的ModelState,因为之前通常都在Web项目中用没在Api项目用过,想想Api方法接收的多参数都封装成了一个实体类,独立于数据Model层,这样其实很方便用ModelState...认识ModelState 我们都知道在MVC中使用ModelState实现表单验证非常简单,借助jquery.validate.unobtrusive这个插件就能轻松的在页面上输出错误信息,详细的介绍可以参考这篇文章...那就创建一个Attribute类并继承System.Web.Http.Filters .ActionFilterAttribute,然后重写OnActionExecuting方法,具体内容就是刚才那一大坨稍微调整一下...当然了,这个Attribute我指定了使用范围包含Class,直接打在Controller上面也是阔以滴~这样就不用每个Action都写了。

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

    使用 ASP.NET Web API 构建超媒体 Web API

    可以使用哪些超媒体项目主要由所选的媒体类型决定。我们当前用于构建 Web API 的很多媒体类型(如 JSON 或 XML)和 HTML 一样,不提供表示链接或表单的内置概念。...对于所有这些问题,使用 HTML 表单可以解决,它有很多意义。 操作中的表单 使用浏览器与 Web 交互时,通常使用表单表示操作。...此模型允许任意 Web API 通过基于不同因素(如用户权限或客户端要使用的版本)提供新表单来自由演变。 用于 XML 和 JSON 的超媒体?...现在我们来了解一下如何在使用 ASP.NET Web API 的生产环境中实际实施这些原理,并使用此框架提供的所有可扩展性和功能。 在内核级别,ASP.NET Web API 支持格式化程序的概念。...格式化程序使您可以轻松使用新媒体类型扩展 Web API。    在 Web API 控制器中提供更好的链接支持 以前的 ProductCatalog­Controller 示例肯定有不妥之处。

    3.4K50

    Flask web表单 Flask-WTF表单扩展

    Web表单 web表单是web应用程序的基本功能。 它是HTML页面中负责数据采集的部件。表单有三个部分组成:表单标签、表单域、表单按钮。...在Flask中,为了处理web表单,我们一般使用Flask-WTF扩展,它封装了WTForms,并且它有验证表单数据的功能。...直接使用HTML来写表单可以实现提交信息的效果。但是需要考虑这几点,如果参数很多,后台也是需要一个个去校验的,直接这样去接受参数再校验的话,这个工作量就会有些大。...而且还会出现csrf的攻击问题,这时候就可以使用Flask-WTF来创建表单,避免这些问题。...使用Flask-WTF来编写表单 1.编写两个视图函数,以及form表单类,用于注册以及跳转index页面 from flask import Flask, render_template, redirect

    2.6K20

    web前端之锋利的jQuery八:jQuery插件的使用(表单验证、表单提交)

    1.jQuery表单验证插件-Validation: 最常使用JavaScript的场合就是表单的验证,而jQuery作为一个优秀的JavaScript库,也提供了一个优秀的表单验证插件-Validation.../js/jquery.validate.messages_cn.js"> 2.jQuery表单插件——Form: jQuery Form插件是一个优秀的Ajax表单插件,可以非常容易的...,无侵入的升级HTML表单以支持Ajax。...在这里,使用$.param()方法把它转化成字符串,得到以下这种格式:name1&address=2 需要注意的是,当表单提交时,Form插件会以Ajax方式自动提交这些数据 第二个参数jqForm...这个回调函数中只要不返回false,表单豆浆杯允许提交;如果返回false,则会阻止表单提交。

    7.6K50

    API和Web Api

    API API(应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。...简单理解:API是给程序员提供的一种工具,以便能更轻松的实现想要的功能。 Web API Web API是浏览器提供的一套操作浏览器功能和页面元素的API(BOM和DOM)。...比如我们想要浏览器弹出一个警示框,直接使用alert('弹出') MDN详细API:https://developer.mozilla.org/zh-CN/docs/Web/API 因为Web API很多...,所以我们将这个阶段称为APIs 总结 API是为我们程序员提供的一个接口,帮助我们实现某种功能,我们会使用就可以了,不必纠结内部如何实现 Web API主要是针对于浏览器提供的接口,主要针对于浏览器做交互效果...Web API一般都有输入和输出(函数的传参和返回值),Web API很多都是方法(函数)。 学习Web API可以结合前面学习内置对象方法的思路学习。

    2.7K20

    HTML5 表单验证 API

    JavaScript API:使用新的 JavaScript API 来进行编程控制和自定义验证。 使用 HTML5 表单验证 1....下面是一个使用 HTML5 表单验证 API 的注册表单示例: <!...Modernizr.formvalidation) { // 加载 polyfill 或使用 JavaScript 验证库 } 结语 HTML5 表单验证 API 为 Web 开发者提供了一种简单而强大的方式来实现客户端表单验证...正确地实现和优化表单验证,结合服务器端验证,可以显著提升 Web 应用的质量和用户满意度。 随着 Web 标准的不断发展,表单验证技术可能会有新的进展。...持续关注这一领域的最新发展和最佳实践,将有助于您在项目中更好地实现表单验证功能,创造出更加用户友好、高效可靠的 Web 表单。

    61610

    Xamarin.Forms入门-使用 Xamarin.Forms 来创建跨平台的用户界面

    Xamarin.Forms 通过使用平台的原生控件来渲染用户界面,使用 Xamarin.Forms 的 App在外观上与平台完全一致。...Xamarin.Forms允许开发人员使用C#语言来快速构建UI界面,由于基于Xamarin.Forms开发的应用程序完全是原生的,它的受限很少,例如浏览器沙盒、底层API限制还有性能,相反它完全可以使用底层操作系统提供的...这意味着你可以使用Xamarin.Forms来构建应用程序的UI,使用原生的语言来构建其他部分。...使用 Xamarin.Forms Page Android 创建一个Activity类型,并且使用 MainLauncher 特性修饰,在 OnCreate 方法中,初始化Xamarin.Forms框架...视图与布局 Xamarin.Forms使用控件来进行布局,在运行时每一个控件都会对应一个原生控件,我们经常会使用下面的类型来构建UI。

    14.9K70

    使用IAPIExplorer列举ASP.NET Web API

    IApiExplorer是一个新的抽象层,它可以帮助获取ASP.NET Web API的结构描述。伴随该接口的还有一个默认实现——APIExplorer。...使用该API可以完成的工作有: 产生文档 创建机器可读的元数据 创建一个测试客户端 微软员工Yao发表了两篇文章(这里和这里)分别用于展示如何使用API打印Web API列表以及如何创建帮助文档。...不过你可以使用我们在Codeplex上的安装包试试看。Henrik写了一篇关于如何使用这些包的很不错的文章。...ASP.NET Web API是ASP.NET MVC 4(目前处于Beta阶段) 中的一款新框架,它可以让使用.NET Framework构建RESTful Web服务的过程变得简单。...查看英文原文:Use IAPIExplorer To List Your ASP.NET Web APIs 查看中文原文:使用IAPIExplorer列举ASP.NET Web API

    76460

    使用Swagger记录ASP.NET Web API

    使用Swagger记录ASP.NET Web API 原文作者:Rob Sanders 原文地址:https://dzone.com/articles/documenting-a-aspnet-web-api-with-swagger...在本文中,我将介绍一些可以为ASP.NET Web API生成文档的方法。...除非您从未生成过Web API网站,否则您将会意识到,默认模板已经包含了为您可能实现的API 生成文档的功能,其中的一个示例位于authme.ws。...入门 没有什么比一对夫妇的文章更多的已写入有关如何生成使用扬鞭用于ASP.NET的Web API文档(这里面的NuGet包称为Swashbuckle,你可以轻松地集成),但我需要的东西少动-其实,我需要生成表示我们提升到生产...你需要什么 您需要能够生成可以在IIS或IIS Express中启动的Web API站点。

    2.2K60
    领券