将 ASHIHTTPRequest 设置为 NSDictionary
我正在尝试将 NSDictionary 发送到服务器并将其设置如下:
NSDictionary *songInfo = [[NSDictionary alloc] initWithObjects:propertyValues forKeys:propertyKeys];
NSURL *exampleURL = [NSURL URLWithString:@"http://www.example.com/activities"];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:exampleURL];
[request setValuesForKeysWithDictionary:songInfo];
[request startAsynchronous];
我收到以下错误:
[<ASIFormDataRequest 0x1035600> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key 1 Media Type.
这是令人费解的,因为媒体类型是字典中的第 14 个键,所以它怎么可能对所有其他的然后就因为这个而发脾气?
它似乎不接受我的词典,但有什么原因吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
有几个原因:
ASIFormDataRequest
和ASIHTTPRequest
都不会覆盖-setValueForKeysWithDictionary:
或-setValue:forKey:
。这意味着,除非键与对象的键值编码兼容键匹配,否则您将看到该异常。尝试使用受支持的方法,例如
-setPostValue:forKey:
:将来:使用 来源。
There are several reasons:
ASIFormDataRequest
norASIHTTPRequest
override-setValueForKeysWithDictionary:
or-setValue:forKey:
. This means that, unless the keys match up to key-value-coding–compliant keys of the object, you are going to see that exception.Try using a supported method, like
-setPostValue:forKey:
:And in future: USE THE SOURCE.