项目作者: ykyouhei

项目描述 :
Qiita API client for Swift.
高级语言: Swift
项目地址: git://github.com/ykyouhei/QiitaKit.git
创建时间: 2016-01-09T08:11:55Z
项目社区:https://github.com/ykyouhei/QiitaKit

开源协议:MIT License

下载


QiitaKit

Carthage compatible
Pod Version
Pod Platform
Pod License
Swift version

Swift製のQiitaAPIClient(v2)です。OAuth認証にも対応しています。

Usage

セットアップ

Qiitaマイページ で登録したアプリケーションのClientID, ClientSecretを設定してください。

  1. // AppDelegate.swift
  2. import QiitaKit
  3. func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
  4. /*
  5. 初期設定を行う
  6. - parameter clientID: 登録アプリケーションのClientID
  7. - parameter clientSecret: 登録アプリケーションのClientSecret
  8. - parameter teamDomain(Option): QiitaTeamのドメイン(Optional)
  9. - parameter keychainConfiguration(Option): トークンを保存するKeychainの設定
  10. */
  11. AuthManager.sharedManager.setup(
  12. clientID: "xxxxx",
  13. clientSecret: "xxxxx")
  14. return true
  15. }

OAuth認証

  1. import QiitaKit
  2. // 認証済み判定
  3. let authorized: Bool = AuthManager.sharedManager.authorized
  4. /*
  5. OAuth認証を行う。認証を行うためのWindowが表示されます
  6. - parameter scopes: アプリで利用可能なスコープ
  7. - readQiita: Qiitaからアクセストークンに紐付いたユーザに関連したデータを読み出す
  8. - readQiitaTeam: Qiita:Teamからデータを読み出す
  9. - writeQiita: Qiitaにデータを書き込む
  10. - writeQiitaTeam: Qiita:Teamにデータを書き込む
  11. - parameter redirectURL: 登録アプリケーションで設定したリダイレクト先のURL
  12. - parameter webViewType: OAuth認証を行うWebViewの種類
  13. - parameter completion: 認証後に呼ばれるハンドラ
  14. */
  15. AuthManager.sharedManager.authorize(withScopes: scopes,
  16. redirectURL: redirectURL,
  17. webViewType: .UIWebView)
  18. { result in
  19. switch result {
  20. case .success:
  21. // 認証成功
  22. case .failure(let error):
  23. // 認証失敗
  24. }
  25. }

リクエスト

QiitaAPIの各リクエストに対応ています。

  1. import QiitaKit
  2. // 認証中ユーザ情報を取得するリクエストオブジェクト
  3. let request = QiitaAPI.User.GetAuthenticatedUserRequest()
  4. // リクエスト送信
  5. APIClient().send(request) { result in
  6. switch result {
  7. case .success(let authenticatedUser):
  8. print(authenticatedUser)
  9. case .failure(let error):
  10. print(error)
  11. }
  12. }

Installation

Carthage

  • github "ykyouhei/QiitaKit" をCartfileに追記.
  • carthage updateを実行.
  • Carthage/Checkouts以下に生成されるQiitaKit.frameworkをプロジェクトにリンク

CocoaPods

  • pod 'QiitaKit'をPodfileに追記
  • pod installを実行