博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于Java链接c#的webapi的注意事项
阅读量:4692 次
发布时间:2019-06-09

本文共 917 字,大约阅读时间需要 3 分钟。

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

1 [HttpPost]2         public Dictionary
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
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传过来的流就没有问题了。

转载于:https://www.cnblogs.com/qmz-blog/p/11280601.html

你可能感兴趣的文章
bootstrap模态框和select2合用时input无法获取焦点(转)
查看>>
21世纪经济网APP
查看>>
解决NetworkOnMainThreadException
查看>>
1039 到底买不买
查看>>
农银电商项目学习笔记(一)
查看>>
MockObject
查看>>
Chukwa
查看>>
(转)Maven仓库——私服介绍
查看>>
设计模式之工厂模式
查看>>
仿复制粘贴功能,长按弹出tips的实现
查看>>
Kubernetes-Host网络模式应用
查看>>
第三次作业
查看>>
使用HTML5构建iOS原生APP(2)
查看>>
sqlplus terminators - Semicolumn (;), slash (/) and a blank line
查看>>
省选知识清单/计划列表(咕?)
查看>>
远程桌面(3389)复制(拖动)文件
查看>>
转 lucene3搜索引擎,索引建立搜索排序分页高亮显示, IKAnalyzer分词
查看>>
bootstrap datetimepicker 位置错误
查看>>
9结构型模式之代理模式
查看>>
第二节 整型数据
查看>>