<!-- If you need to report a security issue please visit https://github.com/apache/dubbo/security/policy -->

- [ ] I have searched the [issues](https://github.com/apache/dubbo/issues) of this repository and believe that this is not a duplicate.

## Describe the proposal
<!-- Please use this for a concrete design proposal for functionality. -->
<!-- If you just want to request a new feature and discuss the possible business value, create a Feature Request. -->

public static <T, R> R unaryCall(Invoker<?> invoker, MethodDescriptor methodDescriptor,
        T request) {
        return (R) call(invoker, methodDescriptor, new Object[]{request});
    }
    public static <T, R> void unaryCall(Invoker<?> invoker, MethodDescriptor method, T request,
        StreamObserver<R> responseObserver) {
        try {
            Object res = unaryCall(invoker, method, request);
            responseObserver.onNext((R) res);
        } catch (Exception e) {
            responseObserver.onError(e);
        }