扫码关注官方订阅号
我这有个接口返回的是jsonp数据,我现在是用一种很土的办法来解析jsonp,就是字符串替换把开头的回调函数名和括号去掉然后再像解析普通json一样解析,请问还有其他更加优雅的办法或者内置的库可以解析jsonp吗?
光阴似箭催人老,日月如移越少年。
python3
import json, re JSONP = 'callbackFunction(["customername1","customername2"])' j = json.loads(re.findall(r'^\w+\((.*)\)$',JSONP)[0]) print(type(j),j) <class 'list'> ['customername1', 'customername2']
如果你肯定返回的jsonp是安全的情况下可以使用eval
JSONP = 'callbackFunction(["customername1","customername2"])' def callbackFunction(lists): print lists eval(JSONP) ['customername1', 'customername2']
都是这么操作的啊,我用php也是这么干的。
jsonp只能以GET方式请求,为什么你需要解析jsonp?不是只要拼接好返回的js函数名和它的参数不就行吗
我的回答有误,可以在前端给请求的回调函数中加入参数让后台解析,长知识了
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
python3
如果你肯定返回的jsonp是安全的情况下可以使用eval
都是这么操作的啊,我用php也是这么干的。
jsonp只能以GET方式请求,为什么你需要解析jsonp?不是只要拼接好返回的js函数名和它的参数不就行吗
我的回答有误,可以在前端给请求的回调函数中加入参数让后台解析,长知识了