node直接调用dubbo服务

这段时间,搞了一个项目,实际场景就是前端搭建了一个node服务,需要直接去调用后端的dubbo服务。

所以需要在现有的项目中做一些改造。

dubbo默认是使用hessian协议的,node是可以直接调用dubbo的默认协议的,或者调用dubbo的其他原生协议。

为什么不考虑直接使用hessian呢,因为hessian是基于http的,消耗巨大,并且会有乱码的问题。

所以后端dubbo提供的服务考虑使用jsonrpc协议,但是dubbo原生是不支持jsonrpc协议的,需要在dubbo上进行一些拓展。

这个拓展类可以使用第三方包dubbo-rpc-jsonrpc。

1. 引入依赖

            
                com.qianmi
                dubbo-rpc-jsonrpc
                1.0.1
            

2. 配置dubbo-provider的配置文件,这里的端口号要跟部署的服务器的端口保持一致

    

3. web.xml中配置servlet


		dubbo
		com.alibaba.dubbo.remoting.http.servlet.DispatcherServlet
		1
	
	
		dubbo
		/*
	

直接postman调用即可

192.168.0.1:6666/org.csu.coderlee.tradeDubboService

{
"method":"createOrder",
"jsonrpc":"2.0",

"params": [
        {
            "labelIds": [
                10023, 
                10039, 
                10037
            ],
            "orderId": "32789127389123123123",
        }
    ]
}

 

你可能感兴趣的:(dubbo)