zoukankan      html  css  js  c++  java
  • asp.net WebApi 使用总结

    如果想让服务端直接返回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方法即可看到结果。

     参考博文:https://www.cnblogs.com/elvinle/p/6252065.html

  • 相关阅读:
    预处理器&预处理变量&头文件保护&条件编译
    Xctf攻防世界—crypto—Normal_RSA
    RSA共模攻击
    centos7安装宝塔面板
    cobalt strike出现连接超时情况解决办法
    C语言变量
    Hello World!
    ctfshow—web—web7
    ctfshow—web—web6
    ctfshow—web—web5
  • 原文地址:https://www.cnblogs.com/axel10/p/8448117.html
Copyright © 2011-2022 走看看