Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在客户端-服务器应用程序与python的通信中使用什么协议?_Python_Rest_Soap_Rpc_Corba - Fatal编程技术网

在客户端-服务器应用程序与python的通信中使用什么协议?

在客户端-服务器应用程序与python的通信中使用什么协议?,python,rest,soap,rpc,corba,Python,Rest,Soap,Rpc,Corba,我需要做一个客户机-服务器应用程序,客户机将使用python gtk制作, 所有过程都将在服务器端,以使客户端摆脱此工作负载 所以我在谷歌上搜索了客户机-服务器协议,我发现CORBA和RPC与我的想法更接近,但我也想让这个应用程序准备好接受web和移动客户端,所以我找到了REST和SOAP 从所有的阅读中,我发现自己有这样的疑问,我是否应该实现两种不同的协议,一种用于gtk客户机(如RPC或CORBA),另一种用于web和移动设备(REST或SOAP) 我可以全部使用REST或肥皂吗 使用RES

我需要做一个客户机-服务器应用程序,客户机将使用python gtk制作, 所有过程都将在服务器端,以使客户端摆脱此工作负载

所以我在谷歌上搜索了客户机-服务器协议,我发现CORBA和RPC与我的想法更接近,但我也想让这个应用程序准备好接受web和移动客户端,所以我找到了REST和SOAP

从所有的阅读中,我发现自己有这样的疑问,我是否应该实现两种不同的协议,一种用于gtk客户机(如RPC或CORBA),另一种用于web和移动设备(REST或SOAP)


我可以全部使用REST或肥皂吗

使用REST。它是最简单的,因此也是最容易访问的。如果您以后真的发现需要SOAP、RPC或CORBA,那么您可以添加它们。

我以前使用SOAP/XMLRPC实现过Web服务(很容易同时支持这两种服务,我当时使用的框架使其变得非常简单);我曾考虑过在不使用SOAP/XMLRPC层的情况下使用标准HTTP(在我意识到REST有一个名称之前),但最终决定不使用它,因为“我不想编写客户端代码来处理数据结构”。(Perl客户端也有简单的SOAP/XMLRPC API。)

最后,我对自己做出的决定感到遗憾:我本可以在一个下午(或最多一天)编写代码来处理数据结构——或者如果我选择使用JSON,可能需要两个小时。但是SOAP/XMLRPC API和库依赖性的负担在我节省了几个小时的开发时间之后仍然存在,并且将继续成为产品未来开发的负担


因此,我建议在使用RPC框架之前尝试一下REST。

REST不是协议。HTTP是我认为您所指的协议。@Darrel:是的,如果有点迂腐的话。答案在这里似乎是恰当的。