7

私は、https: //parse.com/docs/server/guideをガイドとして使用して、Parse から Heroku (w/MongoLab サンドボックス) に移行している多くのユーザーの 1 人です。

(iOS)Facebookログインを使用してみるまで、移行はうまくいきました(リモートリポジトリでRESTコマンドを介してオブジェクトを作成/取得できます)。

メソッド:

[PFFacebookUtils logInInBackgroundWithReadPermissions: ... ]

これは、Parse がホストされていたときに機能していましたが、次のエラーを返すようになりました:

[Error]: Facebook auth is invalid for this user. (Code: 101, Version: 1.12.0)

注: 私の (以前は動作していた) iOS コードへの唯一の変更は、以下に示すように、手動でホストされた新しいリポジトリを Parse サーバーに向けることです。

 let parseConfiguration = ParseClientConfiguration(block: { (ParseMutableClientConfiguration) -> Void in
        ParseMutableClientConfiguration.applicationId = "<*APP ID*>"
        ParseMutableClientConfiguration.clientKey = "<*CLIENT KEY*>"
        ParseMutableClientConfiguration.server = "https://<*HEROKU APP ID*>.herokuapp.com/parse"
    })

 Parse.initializeWithConfiguration(parseConfiguration) 

& オープン ソースの Parse Server コード ( https://github.com/ParsePlatform/parse-server-example )への唯一の変更は、私の Parse / mongo ID と一致するように構成を置き換えることです。

var api = new ParseServer({
  databaseURI:     'mongodb://<*UNIUQUE ID*>' || 'mongodb://localhost:27017/dev',
  cloud: process.env.CLOUD_CODE_MAIN || __dirname + '/cloud/main.js',
  appId: '<*PARSE APP ID*>',
  masterKey: '<*PARSE MASTER KEY*>'
});
4

3 に答える 3

9

有効な Facebook アプリ ID の配列を含むキー facebookAppIds を追加する必要があります。これはドキュメントでここに記載されています。

または、[こちら] ( https://github.com/ParsePlatform/parse-server/issues/82 )で参照されている FACEBOOK_APP_ID キーを追加します。

于 2016-01-31T08:07:09.263 に答える
3

あなたがすでにこれを持っていたか、すでに試したかはわかりませんが、私はあなたと非常によく似た状況にあり、それを修正したのはこれでした:

AppDelegate.swiftでは、で Parse Facebook Utils を初期化するに を初期化するParseClientConfiguration必要があります。didFinishLaunchingWithOptions

...

// *** Initialize Parse. ***
let config = ParseClientConfiguration(block: {
    (ParseMutableClientConfiguration) -> Void in
    ParseMutableClientConfiguration.applicationId = appKey;
    ParseMutableClientConfiguration.clientKey = clientKey;
    ParseMutableClientConfiguration.server = serverURL;
});

Parse.initializeWithConfiguration(config);

// *NOTE: Putting the following line after after Parse.initializeWithConfiguration(config) fixed the issue
// After this change, the user is no longer nil and does not print "Uh oh. The user cancelled the Facebook login.". Instead, it executes the `if let user = user` block
PFFacebookUtils.initializeFacebookWithApplicationLaunchOptions(launchOptions)

...

これが少なくとも誰かに役立つことを願っています!

于 2016-07-05T20:52:25.040 に答える