首先说PC前端,如果用dynamic 作为动态接收参数的话,前端的JSON数据需要用JSON.Stirngify进行序列化才能正常获取到参数。这个和前端确认后没有问题。
问题在于写提供给移动端的接口,同样是POST请求用dynamic动态获取传入JSON参数。奇怪的是,安卓端调用接口成功,但IOS一直调用失败(500)。与移动端开发人员沟通后发现移动端并没有类似前端对JSON字符串进行序列化的操作,但是安卓(也没进行序列化,难道安卓端有自动进行序列化的机制???)为何可以,IOS为何不行,不得其解。。。没办法还是换成实体类的方式来接收参数啦,问题解决。
总结:能用实体类还是用实体类吧,用dynamic需要事前确保调用方能正常调用方能使用,反之慎用!慎用!