ページ内ナビ
概要
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にも対応します。
upload・download・streaming・progressを同じnetwork layerで扱う
file/data/multipart upload、file download、resume data、progress callback、streaming responseなど、large data通信も専用Request typeで扱えます。
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]
参考にした公式資料
- [1]Alamofire 5.12.2 README(2026-10-03)
- [2]Alamofire 5.12.2 usage guide(2026-10-03)
- [3]Alamofire 5.12.2 Package.swift(2026-10-03)
- [4]Alamofire 5.12.2 release(2026-10-03)
- [5]Alamofire MIT license(2026-10-03)
編集部からの補足
iOS/macOS系appでURLSessionの低level処理を毎回組み立てず、API通信のretry・validation・serializationまで共通化したい場合に向きます。一方、Linux/Windows/Androidはbuild可能でも公式にはunsupportedで、pinningや認証等に欠落がある点を用途判断に含めてください。
3ステップで試す
- 1
XcodeでPackage Dependencyを追加
package URLに https://github.com/Alamofire/Alamofire.git を入力し、version 5.12.2を選択します。
File > Add Package Dependencies... - 2
Alamofire productをtargetへ追加
通常はAlamofire targetを追加します。AlamofireDynamicはdynamic linkが必要な場合だけ選びます。
Select product: Alamofire - 3
requestを実行
appからrequestを送りresponseを確認します。productionではvalidation、timeout、retry、authentication policyも定義してください。
import Alamofire; AF.request("https://httpbin.org/get").response { print($0) }
成長
成長の推移 · 直近30日
42,406 Stars
推移データを蓄積中です。
開発アクティビティ
直近90日・週次
- Commit(直近30日)
- 4
- Open PR
- 13
開発アクティビティを蓄積中です。
Built with
カテゴリとタグ
GitHubデータ
関連情報
関連記事を投稿するこのOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。
あわせて探訪
- Express69,502 Stars
共通タグ 2件
routingとmiddlewareを薄いHTTP layerとして組み合わせ、Node.js API/Web backendを構築するframework
JavaScript - NGINX31,781 Stars
共通タグ 2件
Web配信・reverse proxy・load balancingを担い、mainlineとstableを選んで運用するserver
C - OpenSearch13,804 Stars
共通タグ 2件
分散indexで全文検索・analytics・observability・vector searchを支える
Java - tRPC40,685 Stars
共通タグ 1件 · 共通カテゴリ 3件
サーバーとクライアントの型をつなぎ、API変更の食い違いを開発中に見つける
TypeScript - Flutter179,266 Stars
共通タグ 1件 · 共通カテゴリ 2件
Dartの一つのcodebaseからmobile・web・desktop UIを構築するcross-platform SDK
Dart - React Native126,786 Stars
共通タグ 1件 · 共通カテゴリ 2件
React componentをnative UIへ描画するmobile framework。0.87.1とframework-first導線を整理
C++
情報の誤りを報告
掲載内容に誤りや古い情報があればお知らせください。