zoukankan      html  css  js  c++  java
  • 关于Java链接c#的webapi的注意事项

    最近写了一个关于ad域的项目,ad域我也是第一次接触,对ad域的总结我会晚一些时间写出来。在此我先总结一下关于Java调用c#的webapi的一个注意点。

    1 [HttpPost]
    2         public Dictionary<string, object> CreateAccount([FromBody]object userJson)
    3         {
    4 
    5            
    6             return _icreateAccount.NewAccount(userJson.ToString());
    7              
    8          
    9         }

    这样写在c#中使用是可以的,但是如果Java来调用这个接口是不行的。虽然能够调到这个方法,但是参数userJson中什么也没有,也不是null。后来问了老同事才明白什么原因,调用方以流的方式过来调用数据,c#的api接收不到来自Java的流,必须做出以下修改:

    1  [HttpPost]
    2         public Dictionary<string, object> CreateAccount()
    3         {
    4 
    5             byte[] byts = new byte[HttpContext.Current.Request.InputStream.Length];
    6             HttpContext.Current.Request.InputStream.Read(byts, 0, byts.Length);
    7             string req = System.Text.Encoding.UTF8.GetString(byts);       
    8             return _icreateAccount.NewAccount(req);            
    9         }

    这样读取Java传过来的流就没有问题了。

  • 相关阅读:
    11.linux下find命令详解
    10.Linux tcpdump命令详解
    9.linux下free命令详解
    8.Linux网络流量实时监控ifstat iftop命令详解
    7.linux sar 命令详解
    N球M盒
    bzoj1071 [SCOI2007]组队
    php弱类型
    HCTF
    不负光阴就是最好的努力,而努力就是最好的自己。
  • 原文地址:https://www.cnblogs.com/qmz-blog/p/11280601.html
Copyright © 2011-2022 走看看