问题标签 [jsonencoder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 快速查看 JSONEncode() 输出的优雅方式
我怎样才能看到的输出json
?
如果我使用print(json)
我得到的唯一东西是Optional(45 bytes)
json - 具有多种结构的 JSONEncoder
嗨,我有多个 JSON 数据包,如下所示。
和这个
我的数据包有结构,它适用于一种数据包结构。但是如何将它用于多个数据包结构。
现在我想编码 JSON 取决于我的数据
如何做到这一点,或者我需要为每个数据包使用我的数据结构的其他结构?
json - 将 JSON 编码的类转换为 Alamofire 参数的字典
假设我得到了以下结构
我想要的是获取类属性和值,[String: Any]
以便像这样通过 Alamofire 发送它:
swift - 在 Swift 字典中存储 Encodables
我希望将模型对象存储在 Dictionary 中,并希望将整个字典序列JSONEncoder
化为数据,然后将其序列化为字符串并保存。
这个想法是使用 Swift 4 开箱即用Encodable
,以确保我添加到字典中的任何内容都将被序列化,其中可以包括原语和自定义对象(它们本身将符合Encodable
)。
挑战是我应该将字典声明为什么类型:
- 如果我使用
[String: Any]
,它将不知道如何编码Any
,并且如果我必须将其转换为实际的具体类型,这有点违背泛型的目的 - 如果我使用
[String: Encodable]
,它会在运行时崩溃,说 Encodable 不符合自身,这是可以理解的,因为它需要一个具体的类型
为了解决这个问题,我想到了创建一个包装器:即具有关联类型的协议或具有泛型类型值的结构:
但是问题仍然存在,在声明上述字典的类型时,我仍然必须提供具体类型..
“X”应该在这里,或者,实现这一目标的正确方法是什么?我错过了什么?
javascript - PHP JSON_ENCODE 进程被 ESCAPE 键中止
我的网页使用 bootstrap 和 jquery,在相当长的页面加载过程中,它使用 JSON_ENCODE 读取一些 PHP 会话变量,按下 ESCAPE 键似乎会停止进程,中止读取,并导致页面加载失败。
这发生在 Chrome 和 Firefox 中。
什么可能导致这种情况,有什么方法可以防止这种情况发生吗?
谢谢你。
编辑 *(添加了ignore_user_abort但 ESCAPE 仍然中止):
swift - 如何在 Swift 4 中使用 JSONEncoder 对字典进行编码
我想用 JSONEncoder 将 Dictionary 编码为 json。它看起来像一个请求,接收一个字典作为参数并将其编码为 json 作为 http 正文。代码如下所示:
但是这段代码出现错误
致命错误:Dictionary<String, Encodable> 不符合 Encodable,因为 Encodable 不符合自身。您必须使用具体类型进行编码或解码。
我怎样才能使它可编码?
php - 解码 json 数据时没有发生任何事情
我试图解码以下 json 数据,注意,数据在每个键前面
都有一个奇怪的属性“\” 。
PHP
“GOT_DATA”文件的输出是,
DATA.txt 文件的输出是,
这些值是不是开始存储到变量中?我到底在做什么错?
有谁知道为什么recvied json前面有一个'\'?
更新
在更改了 JSON 的源之后,我设法像 (RAW.txt) 一样返回它,
现在是 DATA.txt 文件的输出,
它只是说'阵列'为什么?
swift - JSONEncoder 的 dateEncodingStrategy 不起作用
我正在尝试使用 Swift 4 的 Encodable+JSONEncoder 将结构序列化为字符串。该对象可以保存异构值,如 String、Array、Date、Int 等。
除日期外,使用的方法工作正常。JSONEncoder 的dateEncodingStrategy
属性没有任何作用。
这是重现 Playground 中行为的片段:
输出:
对于 bar3 对象:我期待类似的东西"{"key":"bar3","value":"Thurs, 3 Jan 1991"}\n"
,但它以默认的 .deferToDate 策略格式返回日期。
##编辑1##
所以我在 XCode 9 中运行了相同的代码,它给出了预期的输出,即正确地将日期格式化为字符串。我认为 9.2 对 Swift 4 进行了小幅升级,这打破了这个特性。不知道下一步该怎么做。
##编辑2##
作为临时补救措施,在使用闭包更改为@Hamish 的方法之前,我使用了以下代码段。
swift - 使用 jSONEncoder 的自定义结构
想要使用 JSONEncoder+Encodable 将对象编码为自定义结构。
默认的编码方法foo
给出:
输出:
在自定义输出中,我想使用 property 的值name
作为键,而 rest 的值作为提到的键的值。这同样适用于嵌套对象。所以我希望输出是:
问题是 Encodable/JSONEncoder 是否支持这一点。现在我只处理第一个输出字典并通过迭代键来重构它。
php - 无法对数组进行 JSON 编码
尝试 json_encode() 数组时,未编码我的数组的数组是:
它打印:
和json编码:
它打印:
我做错了什么?
这是我的完整代码: