JSON python到javascript
我想将一些数据从python传输到javascript。我在python端使用Django,在javascript端使用jQuery 我在python端序列化的对象是一个字典 除了列表和变量等简单对象外,该字典还包含SomeClass的实例。为了序列化这些实例,我扩展了simplejson.JSONEncode,如下所示:JSON python到javascript,javascript,jquery,python,django,json,Javascript,Jquery,Python,Django,Json,我想将一些数据从python传输到javascript。我在python端使用Django,在javascript端使用jQuery 我在python端序列化的对象是一个字典 除了列表和变量等简单对象外,该字典还包含SomeClass的实例。为了序列化这些实例,我扩展了simplejson.JSONEncode,如下所示: class HandleSomeClass(simplejson.JSONEncoder): """ simplejson.JSONEncoder extension
class HandleSomeClass(simplejson.JSONEncoder):
""" simplejson.JSONEncoder extension: handle SomeClass """
def default(self, obj):
if isinstance(obj, SomeClass):
readyToSerialize = do_something(obj)
readyToSerialize.magicParameter = 'SomeClass'
return readyToSerialize
return simplejson.JSONEncoder.default(self, obj)
这样,SomeClass实例在JSON中显示为字典,其magicParameter=='SomeClass',这些实例可以嵌套在不同的deph中
现在我想在javascript端重新创建这些实例
我基本上想要一个JSON解码器,它将使用一个简单的对象工厂将所有magicParameter=='SomeClass'的字典转换为自定义javascript对象:
SomeClass = function( rawSomeClass ) {
jQuery.extend( this, rawSomeClass ) // jQuery extend merges the newly-created object and the rawSomeClass object
}
然后我可以添加这样的方法来重新创建原始对象:
SomeClass.prototype.get = function( arguments ) {
// function body
}
如何编写一个解码器,它将扫描JSON对象并执行转换
将JSON字符串求值为一个对象
运行对象的值并使用magicParameter='SomeClass'标识值
通过转换器运行这些值
将结果赋回到值最初在结果对象中的位置
将JSON字符串求值为一个对象
运行对象的值并使用magicParameter='SomeClass'标识值
通过转换器运行这些值
将结果赋回到值最初在结果对象中的位置
如何运行这些值?可以有嵌套的字典和列表。对象中的变量是一个简单的答案。或者您可以阅读更多详细信息这是一篇关于客户端json解析的非常好的文章-我如何运行这些值?可以有嵌套的字典和列表。对象中的变量是一个简单的答案。或者您可以阅读更多详细信息这是一篇关于客户端json解析的非常好的文章-