- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试POST
一个对象到服务器,但它不起作用。这就是我正在做的。仅供引用,我使用 MagicalRecords 来轻松处理 CoreData
。
DBComments *comment = [DBComments MR_createEntity];
comment.body = @"This is body";
comment.subject = @"This is subject";
comment.commentable_id = [NSNumber numberWithInt:291110];
comment.send_email = [NSNumber numberWithBool:YES];
[[RKObjectManager sharedManager] postObject:comment path:URL_COMMENTS
parameters:nil
success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
KLog(@"success");
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
KLog(@"fail");
}];
但我得到以下回应:
E restkit.network:RKObjectRequestOperation.m:576 Object request failed: Underlying HTTP request operation failed with error: Error Domain=org.restkit.RestKit.ErrorDomain Code=-1011 "Expected status code in (200-299), got 400" UserInfo=0x11b688c0 {NSLocalizedRecoverySuggestion={"error":"body is missing, commentable_id is missing"}, AFNetworkingOperationFailingURLRequestErrorKey=<NSMutableURLRequest: 0xc632e50> { URL: http://10.28.79.98:3002/comments }, NSErrorFailingURLKey=http://10.28.79.98:3002/comments, NSLocalizedDescription=Expected status code in (200-299), got 400, AFNetworkingOperationFailingURLResponseErrorKey=<NSHTTPURLResponse: 0xc23cf70> { URL: http://10.28.79.98:3002/comments } { status code: 400, headers {
"Cache-Control" = "no-cache";
Connection = "Keep-Alive";
"Content-Length" = 54;
"Content-Type" = "application/json";
Date = "Fri, 28 Mar 2014 07:45:01 GMT";
Server = "WEBrick/1.3.1 (Ruby/1.9.3/2012-04-20)";
"X-Request-Id" = c8b765e61a8d44020be26e9b3267096e;
"X-Runtime" = "0.010554";
"X-Ua-Compatible" = "IE=Edge";
} }}
正如您在响应中看到的那样,没有发布值
{"error":"body is missing, commentable_id is missing"}
这是我的映射配置
[objectManager addRequestDescriptorsFromArray:@[
// Comments
[RKRequestDescriptor requestDescriptorWithMapping:[self commentsRequestMapping]
objectClass:[DBComments class]
rootKeyPath:@""
method:RKRequestMethodPOST],
]];
- (RKObjectMapping *)commentsRequestMapping {
RKObjectMapping *commentsRequestMapping = [RKObjectMapping requestMapping];
[commentsRequestMapping addAttributeMappingsFromDictionary:@{
@"body" : @"body",
@"commentable_id" : @"commentable_id",
@"commentable_type" : @"commentable_type",
@"created_at" : @"created_at",
@"id" : @"id",
@"lft" : @"lft",
@"parent_id" : @"parent_id",
@"rgt" : @"rgt",
@"subject" : @"subject",
@"title" : @"title",
@"updated_at" : @"updated_at",
@"user_id" : @"user_id",
@"send_email" : @"send_email",
}];
return commentsRequestMapping;
}
我从来没有能够成功地使用postObject
。我错过了什么吗?请帮忙。
最佳答案
如果服务器期望一组简单的内容,那么请求描述符应该有一个 nil 键路径,而不是一个空字符串。
重要的是您发送的内容与服务器期望的内容相匹配,您应该结合使用跟踪日志记录和 Charles(或类似工具)来验证您的代码实际生成的内容。
关于ios - RestKit - postObject 跳过参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22707142/
我是使用 RESTKit 的新手。 我正在尝试使用 postObject 进行简单的 POST。 我想知道我这样做是否正确。 我有这段代码: self.gameWebInteractionObject
我正在尝试POST 一个对象到服务器,但它不起作用。这就是我正在做的。仅供引用,我使用 MagicalRecords 来轻松处理 CoreData。 DBComments *comment = [DB
我正在使用 RestKit 并尝试发布一个带有查询参数的对象(形式为 token= 的身份验证 token ),但我不知道如何让它工作。这就是我正在做的... 首先,我将请求对象映射添加到管理器: R
我正在使用 post 对象方法发布到我的 Rails 服务器。 [manager postObject:recipe path:@"/api/recipes" parameters:@{ @"auth
我正在尝试使用 RestKit 处理将更新的 User 对象发布到我的远程 Web 服务。 目前我的 GET 请求似乎工作正常,但我在使用时遇到问题[[RKObjectManager sharedMa
在- (RKObjectLoader *)postObject:(id)object delegate:(id)delegate 方法之后调用了RKObjectLoaderDelegate 的什么方法
我一直在查看关于 RestKit 的文档,但我一直无法弄清楚 RKMappingResult 的一些细节。 我有创建 NSManagedObject 的代码,称为 newUser,并插入到 RestK
我使用此方法来发布我的对象,但它已被弃用: - (void)postObject:(id)object mapResponseWith:(RKObjectMapping *)objectMapping
我正在使用 RestKit 连接到我们的 WCF 数据服务。 由于响应映射问题,我在使用 RKObjectManager 的 postObject 函数添加实体时遇到问题。 添加实体时,WCF 数据服
我正在用 restkit 0.2 敲打我的头并发布对象。我正在尝试发布一个带有映射 requestDescriptor 的对象,但在我的请求中总是得到一个 request.body=(null) 。我
我正在尝试向服务器发送 POST 请求。我正在使用带有请求描述符的 RESTKit: RKObjectMapping *messageRequestMapping = [RKObjectMapping
遇到一个奇怪的问题,我正在使用 RestKit 将 CoreData 对象发布到远程 Web 服务。远程端的一切看起来都工作正常,但 RestKit 似乎在映射响应时遇到了一些问题。 我的对象响应映射
我是一名优秀的程序员,十分优秀!