错误域= NSCocoaErrorDomain代码= 3840

时间:2017-01-31 12:39:43

标签: ios objective-c facebook parse-platform

我知道其他许多人都有同样的问题,并且有很多相同主题/标题的问题。但这些都没有解决我的问题。

我正在使用解析云代码和Facebook登录。但是,自从解析关闭后,我将代码移到了back4app。

这是我移动到自己的服务器后的Parse初始化:

[Parse initializeWithConfiguration:[ParseClientConfiguration configurationWithBlock:^(id<ParseMutableClientConfiguration> configuration) {
    configuration.applicationId = @"ParseApplicationId";
    configuration.clientKey = @"ParseClientKey";
    configuration.server = @"https://parseapi.back4app.com";
}]];

当我尝试使用PFLogInViewController登录时,在Facebook登录后调用委托方法:

- (void)logInViewController:(PFLogInViewController *)logInController didFailToLogInWithError:(NSError *)error

我收到此错误:

  

错误域= NSCocoaErrorDomain代码= 3840&#34; JSON文本未启动   使用数组或对象和选项来允许未设置片段。&#34;   UserInfo = {NSDebugDescription = JSON文本不是以数组或   允许片段未设置的对象和选项。}

使用PFLogInViewController登录与我的云代码无关,因为它完全由Parse SDK处理。

出现此错误的原因可能是什么。如果您还需要任何其他代码段,我也可以提供。

谢谢

1 个答案:

答案 0 :(得分:0)

好的,我解决了。在我的情况下,我的解析初始化应该是这样的:

[Parse initializeWithConfiguration:[ParseClientConfiguration configurationWithBlock:^(id<ParseMutableClientConfiguration> configuration) {
    configuration.applicationId = ParseApplicationId;
    configuration.clientKey = ParseClientKey;
    configuration.server = @"https://parseapi.back4app.com";
}]];

ParseApplicationIdParseClientKey是常量,我错误地传递了字符串。

如果有人使用自己的服务器托管解析云服务器,请记住,您的服务器不应阻止graph.facebook.com。我的本地服务器允许facebook.com,但仍然阻止graph.facebook.com,并且需要一天多的时间才能找到解决方案。

此外,您无法像以前一样保存PFUser,您可能需要将useMasterKey添加为true。这些与我的问题无关,但我想知道是否有人可能会遇到这些问题。