• ASP.NET MVC4 WebAPI若干要点


    本文仅仅是将一些可以运行无误的WebAPI示例的要点,记录下来,供自己查阅,也供刚刚学习WebAPI的读者参考之。

    1.默认的API是不会过滤到action这个级别的,如果要过滤到这个级别,必须在路由配置中配置才可以。

    例如,可以这样写:"api/{controller}/{action}/{id}"

    2.配置了后,就可以写多个GET、POST方式到指定的action,但是有意思的是参数类型及绑定:

    如果使用GET请求方式调用WebAPI。调用方式可以写成:http://***/****?id=1或者http://**/***/1这种形式。当然,如果想省略参数名称,直接赋值并映射到action上参数,则你的action中的参数必须要和配置中的名称一致。

    重点说下POST请求方式,很奇怪。自己做了几个示例,都成功,可是一旦到正式项目中,就出现404错误。于是翻来覆去地查找原因。后来发现,什么都不用做,仅仅换一下controller的名称和action的名称就OK了。

    如果用POST请求方式,并且参数为string类型的话,那么,首先必须指定参数的类型为string ,即:Content-type: text/json,不能写成:Content-type: text。

    并且在POST的Body中直接写参数值,而不能指定参数名称。因此,abc:"ddddd",这样的参数书写形式是错误的。必须这样写:“dasdfsd”,才可以。

    如果参数形式是对象,例如: public string Post([FromBody]Student student),则参数必须是这样的形式:{属性键值对},才可以,不能这样写:{student:{属性键值对}}。参数的类型为json,即:Content-type: application/ json,不能写:Content-type: json。

    还有,目前GET、POST形式的参数,似乎只能有一个,若存在多个参数,Web API还不能直接支持,需要用一个参数对象进行包装才行(此条需要再次验证)。

  • 相关阅读:
    高阶函数 map
    高阶函数_filter
    sort和sorted方法的使用
    一个函数作为另外一个函数的参数
    匿名函数
    jenkins+Xcode+蒲公英实现ipa自动打包发布全攻略
    iOS 画贝塞尔曲线 连续曲线 平滑曲线 曲线图表
    基于WebRTC实现iOS端音频降噪功能
    苹果ios音频的回声消除处理
    iOS实现录音功能
  • 原文地址:https://www.cnblogs.com/jizhong/p/3175550.html
Copyright © 2020-2023  润新知