1

私の目的: https://github.com/couchbaselabs/ToDoLite-iOSlocalhostを Couchbase サーバーと同期し、デフォルトのデモ URL ではなくゲートウェイを同期します。

次のように同期ゲートウェイを実行します。bin/sync_gateway -url http://localhost:8091

そして、私が例で変更した唯一のことは次のとおりです。

-#define kSyncGatewayUrl @"http://demo.mobile.couchbase.com/todolite"
+#define kSyncGatewayUrl @"http://localhost:4984/sync_gateway/"

そして、私が走るとき

Error: Error Domain=CBLHTTP Code=404 "404 not_found" UserInfo=0x7ff11941fb50 {NSURL=http://localhost:4984/sync_gateway/_facebook, NSLocalizedFailureReason=not_found, NSLocalizedDescription=404 not_found}

これを修正するにはどうすればよいですか?

4

2 に答える 2

2

私はそれを解決しました。理由は、sync_gatewayFacebook 登録サポートを有効にせずに実行したためです。

通常、これはconfig.jsonファイルで行われます。実際、この構成ファイルはずっと ToDoLite で提供されていました。

sync_gatewayこの構成ファイルを使用して起動することが重要です。READMEは実際にこれを述べていますが、ゆるくてカジュアルな方法で...

cd ToDoLite-iOS
sync_gateway -url http://localhost:8091 sync-gateway-config.json

注意: 上記sync_gatewayは からアクセスできるようになっていると思います$PATH。とにかくそれをするのは良い考えです。

また、私は注意を払っていませんでしたdbname。なので交換が必要になります

#define kSyncGatewayUrl @"http://demo.mobile.couchbase.com/todolite"`

#define kSyncGatewayUrl @"http://localhost:4984/todos"

それでは、それを機能させるための完全な一連の手順は何ですか?:

  1. サーバー上のすべてを消去したい場合はrm -rf Library/Application\ Support/Couchbase、最初からやり直してください。Homebrew Cask は、この設定をリセットしにくい別の場所に隠しているため、手動インストールを強くお勧めします。

  2. Couchbase サーバーをインストールする

  3. 新規インストールの場合はログイン資格情報を設定します。それ以外の場合はログインするだけです

  4. クラスター上に名前を付けてバケット (データベース) を作成しtodosます。これはdbnameTODOLite で使用されます。

  5. 同期ゲートウェイを起動します。必ずレプリケーション URL と JSON 構成ファイルを渡してください。 bin/sync_gateway -url http://localhost:8091 sync-gateway-config.json; 同期ゲートウェイを実行し続ける

  6. TODOLiteAppDelegate.mで、次のように変更しkSyncGatewayUrlます #define kSyncGatewayUrl @"http://localhost:4984/todos"。データベースの名前が必要であることに注意してください。

  7. (オプション) に移動して、同期ゲートウェイの管理者インターフェースにアクセスしますhttp://localhost:4985/_admin/db/sync_gateway/sync。ここで同期機能を設定できます。


これらのポート番号がどこから来たのか疑問に思っている場合は、チェックアウトしてください

于 2014-12-20T10:41:23.820 に答える
0

デフォルトのリモート同期 URL は、ダウンロードするプロジェクトのバージョン (iOS、Android、PhoneGap、および Motion) に応じて異なるファイルで定義されます。変更する適切な文字列を見つけるには、プロジェクトで URL " http://demo.mobile.couchbase.com/todolite " を検索し、新しい同期ゲートウェイ データベースの URL に置き換えます。

于 2014-12-20T23:15:37.617 に答える