【问题标题】:geting error with Dictionary字典出错
【发布时间】:2016-08-17 04:13:45
【问题描述】:
     let parameter : Dictionary<String,AnyObject> =  ["action":"add-playlist-item","playlist_id":self.dictPlayList.objectForKey("ID")!,"kod_id":arrayOfID]

错误 [“动作”:添加播放列表项,“播放列表 ID”:166,“kod_id”:<_ttcs21_swiftdeferrednsarray>( 21, 18 ) ]

_TtCs21_SwiftDeferredNSArray 0x7c615620 这个错误是什么意思??

【问题讨论】:

  • 什么是arrayOfID。再给一些代码
  • 所以可以有一些想法
  • var arrayOfID = [String]() ; arrayOfID = ["22","33"]
  • 将字符串数组传递给anyObject似乎存在一些问题
  • 不仅我用 int 做了字符串...同样的错误..还有其他方法可以解决这个问题吗?

标签: ios swift dictionary nsdictionary


【解决方案1】:

检查您使用的是 JSON 参数编码,而不是 URL 编码。

您可能遇到了与我相同的问题。我看到&lt;_TtCs21_SwiftDeferredNSArray 0x7c615620&gt; 也出现在我的请求中。当我更改为 JSON 编码时,一切正常。我不认为这样的字典结构可以正确地进行 URL 编码。我不确定您实际上是如何提出请求的,否则我会发布代码。

【讨论】:

  • 能否请您分享您的请求代码。我也面临同样的问题
【解决方案2】:

Array 是一个值类型,它不是一个对象,而是一个结构体。所以它不符合 AnyObject 协议。使用 Any 而不是 AnyObject。查看更多详情 herehere

【讨论】:

  • 我已经尝试过了,但是 alamofire 不支持。还有其他方法可以解决这个问题吗??
猜你喜欢
  • 2012-09-16
  • 1970-01-01
  • 2017-08-21
  • 2013-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-29
  • 2023-03-12
  • 2015-08-15
相关资源
最近更新 更多