谷歌本地json文件404获取不到,报错404,怎么解决

Flask-jsonrpc&404错误的解决
公司项目用Python+Flask实现,需要用json-rpc技术实现Web Service API,安装:
$ easy_install flask-jsonrpc
参照实现服务端:
from flask import
from flask_jsonrpc
import JSONRPC
Flask(__name__)
JSONRPC(app,
@jsonrpc.method('app.index')
def index():
&&&&return
'Welcome to Flask JSON-RPC'
if __name__ ==
'__main__':
&&&&app.run()
flask_jsonrpc.proxy import ServiceProxy
&&& server =
ServiceProxy('http://localhost:5000/api')
server.App.index()
ValueError: No JSON object could be decoded
这里有报错误,如下所示为404错误,找不到请求的页面
server.send_payload({})
The requested URL was not found on the server.
If you entered the URL manually please check your spelling and
try again.
修正方法:修改flask_jsonrpc.py的函数,用urllib2代替urllib
def send_payload(self, params):
return urllib.urlopen(self.service_url, json.dumps({
&&&&&&&&&&&
'jsonrpc': self.version,
&&&&&&&&&&&
'method': self.service_name,
&&&&&&&&&&&
'params': params,
&&&&&&&&&&&
'id': str(uuid.uuid1())
})).read()
def send_payload(self, params):
req = urllib2.Request(self.service_url)
data = json.dumps({
&&&&&&&&&&&
'jsonrpc': self.version,
&&&&&&&&&&&
'method': self.service_name,
&&&&&&&&&&&
'params': params,
&&&&&&&&&&&
'id': str(uuid.uuid1())
return urllib2.urlopen(req, data, timeout=10).read()
1.urllib2.urlopen一定要设置参数timeout
2.因为服务端是用json.load解析,所以这里要用json.dumps编码。如果服务端直接从request.form取json数据则这里要用urllib.urlencode编码。
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。&&国之画&&&& &&&&&&
&& &&&&&&&&&&&&&&&&&&&&
鲁ICP备号-4
打开技术之扣,分享程序人生!

我要回帖

更多关于 json文件 404 的文章

 

随机推荐