为 python 实施 jsonp 请求
implement jsonp request for python
我正在使用 python rest api 并希望从 api 中获取数据,这会给我 json 带有填充的响应(json p 请求)。我见过几个例子,其中 javascript(jquery 和 angularjs)需要添加一个回调函数来获取 json。如何用 python 做同样的事情?
您不需要,仅在 browser/JavaScript 上下文中需要填充以绕过某些安全限制。对于 Python 用法,只需获取原始响应,删除填充并相应地解析剩余数据。
from json import loads
a = 'paddingFunction({"a":1,"b":2,"c":3,"d":4,"e":5})'
startidx = a.find('(')
endidx = a.rfind(')')
print loads(a[startidx + 1:endidx])
>>> {u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}
我正在使用 python rest api 并希望从 api 中获取数据,这会给我 json 带有填充的响应(json p 请求)。我见过几个例子,其中 javascript(jquery 和 angularjs)需要添加一个回调函数来获取 json。如何用 python 做同样的事情?
您不需要,仅在 browser/JavaScript 上下文中需要填充以绕过某些安全限制。对于 Python 用法,只需获取原始响应,删除填充并相应地解析剩余数据。
from json import loads
a = 'paddingFunction({"a":1,"b":2,"c":3,"d":4,"e":5})'
startidx = a.find('(')
endidx = a.rfind(')')
print loads(a[startidx + 1:endidx])
>>> {u'a': 1, u'c': 3, u'b': 2, u'e': 5, u'd': 4}