python使用SimpleXMLRPCServer实现远程调用,报错Working outside of application context.

倔强的娃娃笑 2017-11-18 10:00:26
服务器端代码


from flask import Flask
from flask import jsonify
from SimpleXMLRPCServer import SimpleXMLRPCServer
import time
import psutil
import xmltodict
class RPCserver:
def __init__(self):
pass
def time(self):
t = {
"time":int(time.time())
}
return jsonify(t)
def ram(self):
ram = {
"total":psutil.virtual_memory().total//(1024*1024),
"used":psutil.virtual_memory().used//(1024*1024)
}
return jsonify(ram)
def hdd(self):
hdd={
"total":psutil.disk_usage('/').total//(1024*1024),
"used":psutil.disk_usage('/').used//(1024*1024)
}
return jsonify(hdd)
def add(self,x,y):
return x+y
def sub(self,x,y):
return x-y
def json_to_xml(self,json_string):
convertoXml = xmltodict.unparse(json_string);
return convertoXml
server = SimpleXMLRPCServer(("localhost", 3000))
print "Listening on port 3000..."
rpcser = RPCserver()
server.register_instance(rpcser)
server.serve_forever()

客户端代码:

import xmlrpclib
c = xmlrpclib.ServerProxy("http://localhost:3000/")
print c.add(1,3)
print c.sub(1,3)
print c.ram()


输出:
...全文
224 1 打赏 收藏 举报
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
QuantumEnergy 2017-11-19
问题在于Flask上下文,flask不太熟悉,加入 app.app_context()试试看
  • 打赏
  • 举报
回复
相关推荐
发帖
脚本语言
加入

3.7w+

社区成员

JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • ITBOB • 鲍勃
申请成为版主
帖子事件
创建了帖子
2017-11-18 10:00
社区公告

CSDN 脚本语言社区接受专栏投稿(专栏会在顶部创建专属你的栏目),投稿需满足以下要求:

  • 脚本语言技术相关;
  • 文章持续更新,保持活跃;
  • 内容清晰明了,干货为主;
  • 文章排版有序,有条有理。

本社区开通招聘专栏,发布招聘信息请联系版主,发布者需要保证招聘信息真实有效,CSDN 平台和版主不对招聘内容负责!

联系方式:私聊版主、发送邮件、QQ联系等均可: