草庐IT

decodable

全部标签

json - 如何使用 Decodable 解码 JSON 数组?

我正在请求API向我发送一些我可以成功检索的数据,但我在解码过程中卡住了。这是我收到的JSON:[{"challenge_id":1,"challenge_title":"newchallenge1","challenge_pts_earned":1000,"challenge_description":"description1","start_date":"2017-09-24T00:00:00.000Z","end_date":"2017-09-24T00:00:00.000Z","challenge_category_id":1,"status_id":2,"createdAt

java中用feign远程调用注解FeignClient的时候不重写Encoder和Decoder怎么格式不对呢?

Feign是一个声明式的Web服务客户端,它使得编写Web服务客户端变得更加简单。在使用Feign进行远程调用的时候,你可能会碰到需要对请求和响应进行编码和解码的情况。在默认情况下,Feign使用SpringEncoder和Decoder对请求和响应进行编码和解码。这些默认的编解码器是根据你的HTTPmessageconverters来配置的。如果你的请求和响应的数据格式与默认的编解码器不匹配,你可能需要自定义编解码器。自定义编解码器需要实现feign.codec.Encoder和feign.codec.Decoder接口,并在FeignClient注解中通过configuration属性进行

json - Swift JSON 序列化类型不匹配

目前正在纠结如何使用Decodable。我已经对遇到的错误进行了一些谷歌搜索,但我仍然相信我构建结构的方式不正确,但对我来说似乎很有意义。我也试过使用可选值在我最后发布的错误中,我对Double类型的引用感到困惑。因为我没有任何类型或任何使用double的响应。(我还可以使用将数据转换为字典的旧swift方法序列化json响应-[String:Any]。但我想使用现代/更新的方法。)JSON响应{"NEWS":[{"DATE":"2018-10-13T03:56:06+1000","SOURCE":"smh.com.au","BLURB":"AssistantTreasurerStua

swift - 泛型类型 'T' 不符合协议(protocol) 'Encodable'

我正在尝试快速使用泛型来解释http响应。所有Json响应在顶部都有相同的签名:{"request":"foo","result":"[{},{}....]}所以我正在使用这个:publicstructHttpResponse{publicletrequest:Bool?publicletresult:DATA?enumCodingKeys:String,CodingKey{caserequest="request"caseresult="result"}..在我的网络层:finalclassNetwork{funcgetItems(_path:String)->Observable>

ios - 使用解码对象(: forKey:) to decode an object that conforms to a protocol

我有一个Objective-C协议(protocol),需要符合NSSecureCoding:@protocolMyProtocol…@end我有一个父对象,它存储对符合MyProtocol的对象的引用,我希望父对象也符合NSSecureCoding。当我尝试这个时:requiredinit?(coderaDecoder:NSCoder){ifletchildObject=aDecoder.decodeObject(of:MyProtocol.self,forKey:"childObject"){self.childObject=childObject}else{returnnil}}

ios - 无法使用类型为 'decode' 的参数列表调用 '(T, from: Data)'

我正在尝试创建一个函数,该函数根据传递给它的自定义JSON模型接收类型为“Codable”的参数。错误:Cannotinvoke'decode'withanargumentlistoftype'(T,from:Data)'发生在解码行,这里是函数:staticfuncupdateDataModels(url:serverUrl,type:T,completionHandler:@escaping(_details:Codable?)->Void){guardleturl=URL(string:url.rawValue)else{return}URLSession.shared.data

swift - 为什么 `decode(_:forKey:)` 忽略它的第一个参数?

decode(_forKey:)似乎忽略了它的第一个参数,而是依赖于通用参数来决定要解码的类型。如果是这样,第一个参数是做什么用的?classCat:Codable{funcspeak()->String{return"Meow"}}classLion:Cat{overridefuncspeak()->String{return"Roar!"}}classPerson:Codable{letfirstPet:CatletsecondPet:Catinit(firstPet:Cat,secondPet:Cat){self.firstPet=firstPetself.secondPet=s

ios - 无需在 Swift 中创建附加类即可解码嵌套数据

我是iOS开发的新手,很抱歉提前提出愚蠢的问题。我有这样的json:{"type":"post","comments":{"count":0,"can_post":1},"likes":{"count":0,"user_likes":0,"can_like":1,"can_publish":1},"reposts":{"count":0,"user_reposted":0}}我想将其转换为仅包含likesCount、commentsCount、repostsCount的类,但不为comments、likes、reposts创建单独的类>。我正在为此使用Decodable,这是我的代码,

swift - 使用 Swift 4 Codable PropertyListDecoder() 解码 PropertyList

我正在尝试使用PropertyListDecoder()解码plist,但是当我开始尝试访问key时,我收到一条错误消息,指出格式错误。我对自己做错了什么感到茫然。我假设我可以像解码JSON文件一样解码Plist文件,对吗?我不知道,我对此还是个新手。//structforPListsstructAccessControl:Decodable{enumAccessControlKeys:String,CodingKey{caseapi}enumKeySecretKeys:String,CodingKey{caseapiKey="KEY"caseapiSecret="SECRET"}va

swift - 使用 Decodable 通过 Firestore 获取对象和文档 ID

我有一个简单的User类,它有以下字段:{"localIdentifier":"xyc9870","isOnline":false,"username":"ZS"}我想使用Swift的Decodable轻松地将QueryDocumentSnapshot转换为类型安全的Swift结构。我还想确保从QueryDocumentSnapshot中获取documentID,以便稍后更新对象。这是我目前用来解码的,但显然它遗漏了documentIdstructUser:Decodable{letlocalIdentifier:Stringletusername:StringletisOnline: