1

iOS 응용 프로그램을 개발 중입니다.iOS 전화 Couchbase Server

(사용자 이름/암호, 등록 및 잊어 버린 암호) 로그인 모듈을 구현하는 데 약간 혼란 스럽습니다.

Couchbase을 처음 사용했습니다. Couchbase Enterprise Editon 사용 "http://192.168.1.126:8091/ui/index.html#/overview" Xcode에서 Couchbase Lite를 설정하고 다음 단계는 무엇인지 모르겠습니다. 아무도 몰라?

데이터 모델링 : 문서 JSON

User ("Set as the EMAIL ID") 
{ 
    _id:” ", 
    username::" ", 
    password::" ", 
    email::" ", 
    type:"user" 
} 

사용자 정보 (이하 "이메일 ID로 설정")

{ 
    _id:” ", 
    description:" ", 
    fb_URL::" ", 
    Twitter::" ", 
    Gender::" ", 
    Age::"[min:, max:]", 
    type:"user" 
} 
+0

당신은 샘플 응용 프로그램 살펴 보았다? 작동 방식에 익숙해지는 가장 좋은 방법은 ... https://github.com/couchbaselabs/ToDoLite-iOS – combinatorial

+0

큰 도움이됩니다. @combinatorial –

답변

2

사용자과 같이 동기화 게이트웨이 구성 파일을 만들 수 있습니다 :

{ 
    "databases": { 
    "app": { 
     "bucket": "walrus", 
     "users": { 
     "john": {"password": "pass"} 
     } 
    } 
    } 
} 

그런 다음 iOS 앱 인증이이 사용자에 대해 사용 설정되었습니다.

let manager = CBLManager.sharedInstance() 
let database = try! manager.databaseNamed("app") 

let url = NSURL(string: "http://localhost:4984/app")! 

let push = database.createPushReplication(url) 
let pull = database.createPullReplication(url) 

push.authenticator = CBLAuthenticator.basicAuthenticatorWithName("john", password: "pass") 
pull.authenticator = CBLAuthenticator.basicAuthenticatorWithName("john", password: "pass") 

push.start() 
pull.start() 

사용자 등록의 경우 Sync Gateway Admin 포트 (기본적으로 4985)에 사용자를 등록하도록 App Server를 설정해야합니다. 사용자 등록하려면 : 잊어 버린 암호 기능을

$ curl -vX POST -H 'Content-Type: application/json' \ 
     -d '{"name": "user2", "password": "pass"}' \ 
     :4985/app/_user/ 

를 새 암호와 사용자 레코드를 업데이트해야 앱 서버 :

$ curl -vX PUT -H 'Content-Type: application/json' \ 
      -d '{"name": "user2", "password": "newpass"}' \ 
      :4985/app/_user/user2 
+0

그러나 Objective C에서 구현이 어떻게 작동합니까? 큰 도움. 미리 감사드립니다 :) @jamiltz –

+0

@AnneBernadette 거의 정확히 Switft 구현과 같습니다 ... CBLManager.sharedInstance()를 [CBLManager sharedInstance] 등으로 전환하면됩니다. – borrrden