OSS探訪

SwiftのHTTP通信をURLSession上で簡潔に組み立て、retry・upload・download・TLS pinningまで統合する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
42,406
主要言語
Swift
ライセンス
MIT
リポジトリ最終更新
2026/10/01
ページ内ナビ

概要

AlamofireはSwift向けHTTP networking libraryです。AppleのURLSessionを基盤に、request/response API、Swift Concurrency、parameter encoding、upload/download、retry、validation、authentication、TLS certificate/public-key pinningなどを一貫したAPIで扱えます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

request・responseとDecodable処理をchainable APIでまとめる

HTTP requestを作成し、statusやContent-TypeをvalidateしたうえでDecodableへserializeする処理をchainとして記述できます。Swift Concurrencyのasync/awaitにも対応します。

出典:[1][2]

upload・download・streaming・progressを同じnetwork layerで扱う

file/data/multipart upload、file download、resume data、progress callback、streaming responseなど、large data通信も専用Request typeで扱えます。

出典:[1][2]

retry・authentication・TLS pinningを共通化する

RequestInterceptorによるadapt/retry、URLCredential認証、certificate/public key pinning、network reachabilityなど、通信policyをapplication全体へまとめやすい構成です。

出典:[1]

向いている用途

Apple platformのAPI clientを共通network layerへ整理したいappに向く

複数endpointを持つmobile/desktop appで、URLSession delegateやerror handlingを各画面へ分散させず共通化したい場合に適しています。

出典:[1]

導入前の確認

5.12.2はversioning updateのみで5.12.0から機能変更はない

5.12.2 release noteはfunctional changeがなくversioning updateのみと明記しています。機能評価では5.12系列のdocumentと5.12.0以降の変更を合わせて確認します。

出典:[4]

Linux・Windows・Androidはbuild可能でもunsupported

READMEはこれらplatformでswift-corelibs-foundation由来の欠落やcrash riskを挙げ、certificate pinning、client certificate、WebSocketRequest、metrics等が利用できないためunsupportedとしています。

出典:[1]

Swift/Xcodeとdeployment targetを導入versionに合わせる

5.12.2 READMEはSwift 6.0 / Xcode 16.0以上を基本要件として案内します。tagのPackage.swiftはSwift tools 6.4を使うため、SPM解決時は使用toolchainとの互換性を確認します。

出典:[1][3]

参考にした公式資料

  1. [1]Alamofire 5.12.2 README(2026-10-03)
  2. [2]Alamofire 5.12.2 usage guide(2026-10-03)
  3. [3]Alamofire 5.12.2 Package.swift(2026-10-03)
  4. [4]Alamofire 5.12.2 release(2026-10-03)
  5. [5]Alamofire MIT license(2026-10-03)
編集部からの補足

iOS/macOS系appでURLSessionの低level処理を毎回組み立てず、API通信のretry・validation・serializationまで共通化したい場合に向きます。一方、Linux/Windows/Androidはbuild可能でも公式にはunsupportedで、pinningや認証等に欠落がある点を用途判断に含めてください。

3ステップで試す

  1. 1

    XcodeでPackage Dependencyを追加

    package URLに https://github.com/Alamofire/Alamofire.git を入力し、version 5.12.2を選択します。

    File > Add Package Dependencies...
  2. 2

    Alamofire productをtargetへ追加

    通常はAlamofire targetを追加します。AlamofireDynamicはdynamic linkが必要な場合だけ選びます。

    Select product: Alamofire
  3. 3

    requestを実行

    appからrequestを送りresponseを確認します。productionではvalidation、timeout、retry、authentication policyも定義してください。

    import Alamofire; AF.request("https://httpbin.org/get").response { print($0) }
公式READMEで確認

成長

成長の推移 · 直近30日

42,406 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
4
Open PR
13

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • networking
  • urlsession
  • urlrequest
  • httpurlresponse
  • request
  • response
  • swift
  • xcode
  • certificate-pinning
  • public-key-pinning
  • parameter-encoding
  • alamofire
Stars
42,406
Forks
7,654
Watchers
1,055
Open Issues
31
Contributors
248
所有者種別
Organization
主要言語
Swift
ライセンス
MIT
リポジトリ最終更新
2026/10/01

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?
Alamofireとは?SwiftのHTTP通信を簡潔にするURLSessionベースのNetworkingライブラリ | OSS探訪