1

私はiOS開発に非常に慣れていません。これは私の最初のアプリケーションであり、私は大きな問題を抱えています。RestKit の開始方法がわかりません。過去 3 週間以来、iOS アプリに RestKit 認証を実装しようとしています。私は多くの解決策を探しましたが、誰もが異なるアプローチをとっているため、どれが役立つかを抽出できませんでした.

Android アプリケーションで既に使用している Web サービスの準備ができています。今、私は iOS 用の同じ Web サービスを利用したいと考えています。

したがって、認証のために、ユーザー名とパスワードをパラメーターとして受け取るログインサービスがあります。ブール値を返します (JSON または XML ではなく、単に true または false)。そのため、Web サーバーからのブール型の応答を処理する方法についての解決策は見つかりませんでした。

誰かがこの問題を解決するのを手伝ってくれるなら。誰かが同様の種類の動作を実装している場合は、レストキットから始める方法を教えてください. つまり、リクエストを送信する方法と、サーバーから送信されるレスポンスにアクセスする方法です。

実装しようとしたコードを提供しました。

RKURL * baseUrl = [RKURL URLWithBaseURLString:@"https://webserver.org/login"];

RKObjectManager * objectManager = [RKObjectManager objectManagerWithBaseURL:baseUrl];

objectManager.client.username = txtUserName.text;
objectManager.client.password = txtPassword.text;
objectManager.client.authenticationType = RKRequestAuthenticationTypeHTTPBasic;
objectManager.client.disableCertificateValidation = YES;

[objectManager loadObjectsAtResourcePath:[NSString stringWithFormat:@"%@?%@", [baseUrl      resourcePath], nil] delegate:self];

事前に感謝します。どんな種類の助けも大歓迎です。

4

1 に答える 1

1

バックエンドがオブジェクト(xmlまたはjson)を返さない場合は、を使用しても意味がありません RKObjectManagerRKClient代わりに、のセレクターを使用してリクエストを直接送信してみてください。get:queryParameters:delegate:これにより、に比べて低レベルのAPIが提供されRKObjectManagerます。

また、WSはユーザー名とパスワードを入力として受け取ると言いました。ユーザー名とパスワードRKClientのプロパティをクレデンシャルに設定すると、基本HTTP認証に使用されます。辞書には、Webサービスの入力パラメーターが含まれているqueryParameters必要があります。

例:

[[RKClient sharedClient] get:myResource queryParameters:params delegate:self];

必ずデリゲートを実装してください

- (void)request:(RKRequest *)request didLoadResponse:(RKResponse *)response

詳細については、ドキュメントを参照してください。

于 2012-08-02T07:15:31.687 に答える