python twisted upload file picture xmlrpc

import base64
from twisted.web import xmlrpc, server
class Example(xmlrpc.XMLRPC):
    """An example object to be published."""

    def xmlrpc_attachfile(self, pagename, attachname, data):
        """
        Return sum of arguments.
        """
        filename = pagename+attachname	
	    fh = open(filename, 'wb+')
	    fh.write(base64.decodestring(data))
	    fh.close()

if __name__ == '__main__':
    from twisted.internet import reactor
    r = Example()
    reactor.listenTCP(7080, server.Site(r))
    reactor.run()

import xmlrpclib  
import base64  
 
myrpc = xmlrpclib.ServerProxy("http://192.168.106.106:7080")
file = open('a.jpg', 'rb').read()  #二进制方式打开
myrpc.attachfile("pageName", "a.jpg", base64.encodestring(file)) 


客户端一定要以二进制方式读取,否则图片上传不成功。

你可能感兴趣的:(Web,python)