asp.net WebApi 使用总结
程序员文章站
2022-11-02 08:55:26
如果想让服务端直接返回json或者xml的话,可以考虑使用webservice、wcf,或者webapi。webservice基于xml,效率较慢,wcf虽然可以返回json,但是配置繁琐。webapi相较于前两者而言配置简单灵活,效率也不错。是asp.net平台上制作api接口的首选。 新建.ne ......
如果想让服务端直接返回json或者xml的话,可以考虑使用webservice、wcf,或者webapi。webservice基于xml,效率较慢,wcf虽然可以返回json,但是配置繁琐。webapi相较于前两者而言配置简单灵活,效率也不错。是asp.net平台上制作api接口的首选。
visual studio 2017 新建.net framework web应用程序,模板选择webapi,默认模板已经替你完成了大部分的配置,直接运行程序并浏览器访问默认控制器ValuesController,既/api/values即可看到效果。webapi的访问路由配置文件位于app_start文件夹下,配置方法与mvc路由差别不大。
如果想要将默认返回的xml格式不满意,想改成json格式的话,可以在global文件的Application_Start方法里添加:
GlobalConfiguration.Configuration.Formatters.XmlFormatter.SupportedMediaTypes.Clear();
这样返回的数据就会被格式化为json而不是xml了。
但是这时使用的序列化方法是系统自带的,如果想要自定义,可以在控制器里直接返回HttpResponseMessage类,不过HttpResponseMessage需要自己构建。
控制器里添加测试方法:
[AcceptVerbs("get", "post")] //配置接受的请求类型。 public HttpResponseMessage Demo() { string jsonStr = JsonConvert.SerializeObject(new {Id = 10, Name ="ka"}); HttpResponseMessage result = new HttpResponseMessage { Content = new StringContent(jsonStr,Encoding.GetEncoding("UTF-8"), "application/json")}; return result; }
访问Demo方法即可看到结果。
推荐阅读
-
使用Arcgis Engine 二次开发的使用和总结
-
创建基于ASP.NET core 3.1 的RazorPagesMovie项目(一)-创建和使用默认的模板
-
使用NuGet将我们的ASP.NET Core类库打包并将程序包(类库)发布到NuGet平台上进行管理
-
使用ASP.NET Core 3.x 构建 RESTful API - 5.1 输入验证
-
ASP.NET学习笔记(五)-全球化部署,网站发布方法,AJAX使用,水晶报表使用,DropDownList,CheckBox全选
-
ASP.NET常用数据绑定控件优劣总结
-
asp.net(c#)下Jmai去说明 使用与下载
-
详解使用asp.net mvc部分视图渲染html
-
详解Asp.net Core 使用Redis存储Session
-
浅谈ASP.NET常用数据绑定控件优劣总结