Latest 1.0.0
Homepage https://github.com/ykyouhei/QiitaKit
License MIT
Platforms ios 10.0, requires ARC
Authors

Carthage compatible
Pod Version
Pod Platform
Pod License
Swift version

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

Usage

セットアップ

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


// AppDelegate.swift
import QiitaKit

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

    /*
     初期設定を行う

     - parameter clientID:                      登録アプリケーションのClientID
     - parameter clientSecret:                  登録アプリケーションのClientSecret
     - parameter teamDomain(Option):            QiitaTeamのドメイン(Optional)
     - parameter keychainConfiguration(Option): トークンを保存するKeychainの設定
    */
    AuthManager.sharedManager.setup(
       clientID: "xxxxx",
       clientSecret: "xxxxx")

    return true

}

OAuth認証

import QiitaKit

// 認証済み判定
let authorized: Bool = AuthManager.sharedManager.authorized

/*
OAuth認証を行う。認証を行うためのWindowが表示されます

- parameter scopes:      アプリで利用可能なスコープ
   - readQiita:      Qiitaからアクセストークンに紐付いたユーザに関連したデータを読み出す
   - readQiitaTeam:  Qiita:Teamからデータを読み出す
   - writeQiita:     Qiitaにデータを書き込む
   - writeQiitaTeam: Qiita:Teamにデータを書き込む

- parameter redirectURL: 登録アプリケーションで設定したリダイレクト先のURL

- parameter webViewType: OAuth認証を行うWebViewの種類

- parameter completion:  認証後に呼ばれるハンドラ

*/
AuthManager.sharedManager.authorize(withScopes: scopes,
                                    redirectURL: redirectURL,
                                    webViewType: .UIWebView)
{ result in
    switch result {
    case .success:
        // 認証成功

    case .failure(let error):
        // 認証失敗
    }
}

リクエスト

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

import QiitaKit

// 認証中ユーザ情報を取得するリクエストオブジェクト
let request = QiitaAPI.User.GetAuthenticatedUserRequest()

// リクエスト送信
APIClient().send(request) { result in
    switch result {
    case .success(let authenticatedUser):
        print(authenticatedUser)

    case .failure(let error):
        print(error)
    }
}

Installation

Carthage

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

CocoaPods

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

Latest podspec

{
    "name": "QiitaKit",
    "version": "1.0.0",
    "summary": "A Swift API Client for Qiita",
    "homepage": "https://github.com/ykyouhei/QiitaKit",
    "license": "MIT",
    "authors": {
        "Kyohei Yamaguchi": "[email protected]"
    },
    "social_media_url": "https://twitter.com/kyo__hei",
    "platforms": {
        "ios": "10.0"
    },
    "source": {
        "git": "https://github.com/ykyouhei/QiitaKit.git",
        "tag": "1.0.0"
    },
    "source_files": "QiitaKit/Sources/**/*.swift",
    "requires_arc": true
}

Pin It on Pinterest

Share This