当前位置: 首页 > 面试题库 >

Python扭曲JSON RPC

萧波峻
2023-03-14
问题内容

谁能推荐一些简单的代码来使用Twisted设置简单的JSON RPC客户端和服务器?

我找到了txJSON-RPC,但我想知道是否有人对使用这些anc有一定的经验可以推荐一些东西。


问题答案:

txJSONRPC很棒。我使用它,并且有效。我建议您尝试一下。

from txjsonrpc.web import jsonrpc
from twisted.web import server
from twisted.internet import reactor

class Math(jsonrpc.JSONRPC):
    """
    An example object to be published.
    """
    def jsonrpc_add(self, a, b):
        """
        Return sum of arguments.
        """
        return a + b

reactor.listenTCP(7080, server.Site(Math()))
reactor.run()

客户:

from twisted.internet import reactor
from txjsonrpc.web.jsonrpc import Proxy

def printValue(value):
    print "Result: %s" % str(value)

def printError(error):
    print 'error', error

def shutDown(data):
    print "Shutting down reactor..."
    reactor.stop()

proxy = Proxy('http://127.0.0.1:7080/')

d = proxy.callRemote('add', 3, 5)
d.addCallback(printValue).addErrback(printError).addBoth(shutDown)
reactor.run()

作为奖励,我将保留一些替代方案:放大器。 http://amp-protocol.net



 类似资料:
  • 问题内容: websockets有趣的部分是从服务器向浏览器发送本质上未经请求的内容,对吗? 好吧,我正在使用GregorMüllegger的django-websocket。使Websockets在Django中工作确实是一个很棒的早期尝试。 我完成了“ helloworld”。它的工作方式是:当请求是websocket时,会将对象websocket附加到请求对象。因此,在解释websocket

  • 问题内容: 我正在尝试开始学习如何创建套接字服务器。我想添加一些有用的功能(例如auth,也许还有其他一些功能)。也许有人可以给我指出一个很好的教程,这将帮助我入门(+也许还有其他一些想法) 问题答案: 看这里:60秒内扭曲的网。这是一组博客文章,逐步描述了如何使用Twisted做很多常见的事情,所有这些都是由Twisted的最大贡献者Jean- Paul Calderone撰写的。这确实是您应该

  • 问题内容: 什么是Twisted最接近的Java替代方案? 问题答案: 与斯蒂芬(Stephane)一样,我建议您看一下Mina。它是异步网络IO的框架。它建立在前面提到的NIO之上,并且IMO隐藏了与Selectors,Channels等有关的一些复杂性。我已经使用Mina进行了几个项目,其效果相当不错,但是请注意,我发现文档有些薄弱。再有,就像Stephane提到的那样,它并没有对太多协议的现

  • 问题内容: 因此,我研究了一些事情,包括使用python和Twisted框架编写HTTP代理。 本质上,像其他一些问题一样,我希望能够修改将发送回浏览器的数据。也就是说,浏览器请求资源,代理将获取资源。在资源返回浏览器之前,我希望能够修改ANY(HTTP标头和内容)内容。 这是我最初发现的(需要帮助编写扭曲的代理)。我尝试了一下,但对我没有用。我还发现了该功能(Python Twisted代理-

  • 我想像这样扭曲图像: 2013年4月8日新增:我使用了此代码,但无法正常工作:

  • 问题内容: 我对如何在python / twisted中编写异步代码感到困惑。假设(出于参数考虑)我正在向世界公开一个函数,该函数将接受一个数字,如果它是质数/非质数,则返回True / False,因此它看起来像这样: (只是为了说明)。 现在,假设有一个Web服务器需要根据提交的值调用IsPrime。对于大型服务器,这将需要很长时间。 如果在此期间另一个用户要求小数的素数,是否有一种方法可以使