Open asdxiab opened 8 months ago
业务网关implements InvocationHandler,在反射中做rpc调用,但是升级servicecomb后 InvokerUtils.syncInvoke方法参数变了,这个有啥办法处理Object[] args 转成 <String, Object> swaggerArguments,尝试过将method中parameters的name做key,但是没发保证arg[]顺序和method入参一致
例如: public class Invoker implements InvocationHandler { @Override public Object invoke(Object proxy, Method method, Object[] args) { Object response = InvokerUtils.syncInvoke(microserviceName, microserviceSchemaId, microserviceOperationId,args); } }
2.x 使用弱类型契约。 需要和 swagger 的参数匹配,而不是服务端的java代码参数匹配。
业务网关implements InvocationHandler,在反射中做rpc调用,但是升级servicecomb后 InvokerUtils.syncInvoke方法参数变了,这个有啥办法处理Object[] args 转成 <String, Object> swaggerArguments,尝试过将method中parameters的name做key,但是没发保证arg[]顺序和method入参一致
例如: public class Invoker implements InvocationHandler { @Override
public Object invoke(Object proxy, Method method, Object[] args) { Object response = InvokerUtils.syncInvoke(microserviceName, microserviceSchemaId, microserviceOperationId,args); } }