开发者

What protocol to use in client-server app communication with python?

I need to do a client-server application, the client will be made with python-gtk, all procedures will be on server-side to free the client of this workload.

So i did search on google about client-server protocols and i found that CORBA and RPC are cl开发者_开发知识库oser from what i had in mind, BUT also i want to made this app ready to accept web and mobile clients, so i found REST and SOAP.

From all that reading i found myself with this doubts, should i implement two different protocols, one for gtk-client (like RPC or CORBA) and another for web and mobile (REST or SOAP)?

Can i use REST or SOAP for all?


I've implemented webservices using SOAP/XMLRPC (it was easy to support both, the framework I was using at the time made it pretty trivial) before; I had thought about using standard HTTP without the SOAP/XMLRPC layer (before I was aware that REST had a name :) but decided against it in the end because "I didn't want to write client-side code to handle the datastructures". (The Perl client also had easy SOAP/XMLRPC APIs.)

In the end, I regretted the decision I made: I could have written the code to handle the datastructures myself in an afternoon (or at the most a day) -- or if I had chosen to use JSON, probably two hours. But the burden of the SOAP/XMLRPC API and library dependencies lives on, years after I saved a few hours of developing, and will continue to be a burden for future development of the product.

So I recommend giving REST a really good try before going with an RPC framework.


Use REST. It's the simplest, and therefore the most widely accessible. If you really find a need for SOAP, RPC, or CORBA later, you can add them then.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜