我使用AFNetworking将Book对象添加到服务器。这是设置:
为测试创建了一些虚拟Book
对象:
Book *newBook1 = [[Book alloc] init];
newBook1.title = @"Test Book 1";
newBook1.author = @"Harlan";
Book *newBook2 = [[Book alloc] init];
newBook2.title = @"Test Book 2";
newBook2.author = @"Harlan";
NSArray *books = [NSArray arrayWithObjects:newBook1, newBook2, nil];
[bookCommunicator addBooks:books];
内部BookCommunicator
:
- (void)addBooks:(NSArray *)books
{
for(Book *book in books)
{
[self addBook:book];
}
}
- (void)addBook:(Book *)book
{
NSDictionary *bookProperties = [NSDictionary dictionaryWithObjectsAndKeys:
book.author, @"author",
book.title, @"title",
nil];
[_httpSessionManager POST:@"books" parameters:bookProperties
success:^(NSURLSessionDataTask *task, id responseObject) {
[self.delegate didAddBooks];
}
failure:^(NSURLSessionDataTask *task, NSError *error) {
[self.delegate addingBooksFailedWithError:error];
}
];
}
我得到了成功的回复。 responseObject
是服务器上已有的所有Book
个对象的数组 - 不包括新对象。在检查服务器时,这两个新书对象不存在。关于为什么的任何想法?
答案 0 :(得分:0)
问题不在于上面的代码,而在于API。它需要在端点上跟踪/
(即' books /') - 但它应该已经接受了两本书'或者'书籍/'。