嗨,大家好,
我正在解码来自后端系统到 JSON 的数据:
JSONDecoder().decode(<#T##type: Decodable.Protocol##Decodable.Protocol#>, from: <#T##Data#>)
.
我经常针对不同类型的数据类型执行此操作,但这次我收到以下错误:"Cannot invoke 'decode' with an argument list of type '(VrOpsObjectStatistics!, from: Data)"
这是我的结构和解码过程的部分代码:
我的结构:
struct VrOpsObjectStatistics : Decodable
{
var resourceId: String
struct StatList : Decodable
{
struct Stat : Decodable
{
var timestamps: [Date]
struct StatKey : Decodable
{
var key: String
}
var statKey: StatKey
var data: [Double]
}
var stat: [Stat]
}
}
final class Ops
{
static let sharedVrOps = VrOps();
var vrOpsObjectStatistics : VrOpsObjectStatistics!;
func decodeDataToJson(jsonData : Data, parsingType : String) ->
(Bool, Any)
{
do
{
self.vrOpsObjectStatistics = try
JSONDecoder().decode(vrOpsObjectStatistics.self, from: jsonData);
}
catch
{
print(error)
return (false, error)
}
}
}