Ios AF2和解析:错误404

Ios AF2和解析:错误404,ios,parse-platform,afnetworking-2,Ios,Parse Platform,Afnetworking 2,我一直在尝试使用Parse.com的RESTAPI和AFNetworking与之通信。(我没有使用他们的iOS SDK,因为我想使用核心数据,而它似乎不允许这样做) 无论如何,几天前我开始学习AFNetworking,遇到了一个问题——我总是遇到错误404 下面是我的AFHTTPSessionManager的简单子类: #import "ParseHTTPClient.h" static NSString * const ParseAppID = @"---"; static NSString

我一直在尝试使用Parse.com的RESTAPI和AFNetworking与之通信。(我没有使用他们的iOS SDK,因为我想使用核心数据,而它似乎不允许这样做)
无论如何,几天前我开始学习AFNetworking,遇到了一个问题——我总是遇到错误404

下面是我的AFHTTPSessionManager的简单子类:

#import "ParseHTTPClient.h"

static NSString * const ParseAppID = @"---";
static NSString * const ParseRESTAPI = @"---";
static NSString * const ParseURLString = @"https://api.parse.com/v1/";

@implementation ParseHTTPClient

+ (ParseHTTPClient *)sharedClient
{
    static ParseHTTPClient *_sharedParseHTTPClient = nil;

    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        _sharedParseHTTPClient = [[self alloc] initWithBaseURL:[NSURL URLWithString:ParseURLString]];
    });

    return _sharedParseHTTPClient;
}

- (instancetype)initWithBaseURL:(NSURL *)url
{
    self = [super initWithBaseURL:url];

    if (self) {
        self.responseSerializer = [AFJSONResponseSerializer serializerWithReadingOptions:NSJSONReadingAllowFragments];

        self.requestSerializer = [AFJSONRequestSerializer serializer];
        [self.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
        [self.requestSerializer setValue:ParseAppID forHTTPHeaderField:@"X-Parse-Application-Id"];
        [self.requestSerializer setValue:ParseRESTAPI forHTTPHeaderField:@"X-Parse-REST-API-Key"];
    }

    return self;
}

- (void) addTodo
{
    NSDictionary *parameters = @{@"description":@"Hello World!"};
    self.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/html", nil];
    [self POST:@"classes/Todo" parameters:parameters success:^(NSURLSessionDataTask *task, id responseObject) {
        NSLog(@"Yay! %@",responseObject);
    } failure:^(NSURLSessionDataTask *task, NSError *error) {
        NSLog(@"Error! %@",error);
    }];
}

@end
不幸的是,当我调用addTodo时,我会注销此项:

错误!错误域=NSCOCAERRORDOMAIN代码=3840“操作 无法完成。(Cocoa错误3840。)(周围的值无效 字符0。)UserInfo=0x8f6db80{NSDebugDescription=无效值 在字符0附近,NSUnderlyingError=0x8f6c600“请求失败:未 找到(404)“}

几天来我一直在寻找解决办法,最后还是来了。。请帮忙(:

谢谢!

奇怪……我有一个应用程序同时使用解析数据和核心数据。在这方面,它也使用了StackMob。显然,您需要检索PFObjects create ManagedObjects并手动添加它们。@MDB983当您更改对象时,如何将这些更改保存到解析数据和核心数据?您显然有一个so键我排序,只需单独更新它们,并提出某种形式的同步。我的挑战是我需要“数据”即使在不在线的情况下,本地数据存储也是唯一的选择。为了与其他用户进行通信,我将Parse作为后端数据存储实现。然后,我在在线时执行手动同步。Parse SDK中没有任何东西可以阻止这一点,因此,我不认为使用REST API和SDK对pr有什么不同更新/同步的问题。@MDB983在使用Parse时,我应该将PFObject子类化,因为否则我将没有save方法,但在使用Core Data时,我应该将NSManagedObject子类化。使用REST API,即使我将NSManagedObject子类化,我也可以将其保存到Parse。在使用这两种方法时,您是如何保存对象的?我有两种方法可以从NSManagedObjects创建json对象,反之亦然。实际上,从NSManagedObjects创建json只需要做些工作。