Functions.html 97 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>Functions Reference</title>
  5. <link rel="stylesheet" type="text/css" href="css/jazzy.css" />
  6. <link rel="stylesheet" type="text/css" href="css/highlight.css" />
  7. <meta charset="utf-8">
  8. <script src="js/jquery.min.js" defer></script>
  9. <script src="js/jazzy.js" defer></script>
  10. <script src="js/lunr.min.js" defer></script>
  11. <script src="js/typeahead.jquery.js" defer></script>
  12. <script src="js/jazzy.search.js" defer></script>
  13. </head>
  14. <body>
  15. <a title="Functions Reference"></a>
  16. <header class="header">
  17. <p class="header-col header-col--primary">
  18. <a class="header-link" href="index.html">
  19. Alamofire Docs
  20. </a>
  21. (86% documented)
  22. </p>
  23. <p class="header-col--secondary">
  24. <form role="search" action="search.json">
  25. <input type="text" placeholder="Search documentation" data-typeahead>
  26. </form>
  27. </p>
  28. <p class="header-col header-col--secondary">
  29. <a class="header-link" href="https://github.com/Alamofire/Alamofire">
  30. <img class="header-icon" src="img/gh.png"/>
  31. View on GitHub
  32. </a>
  33. </p>
  34. <p class="header-col header-col--secondary">
  35. <a class="header-link" href="dash-feed://https%3A%2F%2Falamofire%2Egithub%2Eio%2FAlamofire%2Fdocsets%2FAlamofire%2Exml">
  36. <img class="header-icon" src="img/dash.png"/>
  37. Install in Dash
  38. </a>
  39. </p>
  40. </header>
  41. <p class="breadcrumbs">
  42. <a class="breadcrumb" href="index.html">Alamofire Reference</a>
  43. <img class="carat" src="img/carat.png" />
  44. Functions Reference
  45. </p>
  46. <div class="content-wrapper">
  47. <nav class="navigation">
  48. <ul class="nav-groups">
  49. <li class="nav-group-name">
  50. <a class="nav-group-name-link" href="Classes.html">Classes</a>
  51. <ul class="nav-group-tasks">
  52. <li class="nav-group-task">
  53. <a class="nav-group-task-link" href="Classes/DataRequest.html">DataRequest</a>
  54. </li>
  55. <li class="nav-group-task">
  56. <a class="nav-group-task-link" href="Classes/DownloadRequest.html">DownloadRequest</a>
  57. </li>
  58. <li class="nav-group-task">
  59. <a class="nav-group-task-link" href="Classes/DownloadRequest/DownloadOptions.html">– DownloadOptions</a>
  60. </li>
  61. <li class="nav-group-task">
  62. <a class="nav-group-task-link" href="Classes/MultipartFormData.html">MultipartFormData</a>
  63. </li>
  64. <li class="nav-group-task">
  65. <a class="nav-group-task-link" href="Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a>
  66. </li>
  67. <li class="nav-group-task">
  68. <a class="nav-group-task-link" href="Classes/NetworkReachabilityManager/NetworkReachabilityStatus.html">– NetworkReachabilityStatus</a>
  69. </li>
  70. <li class="nav-group-task">
  71. <a class="nav-group-task-link" href="Classes/NetworkReachabilityManager/ConnectionType.html">– ConnectionType</a>
  72. </li>
  73. <li class="nav-group-task">
  74. <a class="nav-group-task-link" href="Classes/Request.html">Request</a>
  75. </li>
  76. <li class="nav-group-task">
  77. <a class="nav-group-task-link" href="Classes/Request/ValidationResult.html">– ValidationResult</a>
  78. </li>
  79. <li class="nav-group-task">
  80. <a class="nav-group-task-link" href="Classes/ServerTrustPolicyManager.html">ServerTrustPolicyManager</a>
  81. </li>
  82. <li class="nav-group-task">
  83. <a class="nav-group-task-link" href="Classes/SessionDelegate.html">SessionDelegate</a>
  84. </li>
  85. <li class="nav-group-task">
  86. <a class="nav-group-task-link" href="Classes/SessionManager.html">SessionManager</a>
  87. </li>
  88. <li class="nav-group-task">
  89. <a class="nav-group-task-link" href="Classes/SessionManager/MultipartFormDataEncodingResult.html">– MultipartFormDataEncodingResult</a>
  90. </li>
  91. <li class="nav-group-task">
  92. <a class="nav-group-task-link" href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a>
  93. </li>
  94. <li class="nav-group-task">
  95. <a class="nav-group-task-link" href="Classes/TaskDelegate.html">TaskDelegate</a>
  96. </li>
  97. <li class="nav-group-task">
  98. <a class="nav-group-task-link" href="Classes/UploadRequest.html">UploadRequest</a>
  99. </li>
  100. </ul>
  101. </li>
  102. <li class="nav-group-name">
  103. <a class="nav-group-name-link" href="Enums.html">Enumerations</a>
  104. <ul class="nav-group-tasks">
  105. <li class="nav-group-task">
  106. <a class="nav-group-task-link" href="Enums/AFError.html">AFError</a>
  107. </li>
  108. <li class="nav-group-task">
  109. <a class="nav-group-task-link" href="Enums/AFError/ParameterEncodingFailureReason.html">– ParameterEncodingFailureReason</a>
  110. </li>
  111. <li class="nav-group-task">
  112. <a class="nav-group-task-link" href="Enums/AFError/MultipartEncodingFailureReason.html">– MultipartEncodingFailureReason</a>
  113. </li>
  114. <li class="nav-group-task">
  115. <a class="nav-group-task-link" href="Enums/AFError/ResponseValidationFailureReason.html">– ResponseValidationFailureReason</a>
  116. </li>
  117. <li class="nav-group-task">
  118. <a class="nav-group-task-link" href="Enums/AFError/ResponseSerializationFailureReason.html">– ResponseSerializationFailureReason</a>
  119. </li>
  120. <li class="nav-group-task">
  121. <a class="nav-group-task-link" href="Enums/HTTPMethod.html">HTTPMethod</a>
  122. </li>
  123. <li class="nav-group-task">
  124. <a class="nav-group-task-link" href="Enums/Result.html">Result</a>
  125. </li>
  126. <li class="nav-group-task">
  127. <a class="nav-group-task-link" href="Enums/ServerTrustPolicy.html">ServerTrustPolicy</a>
  128. </li>
  129. </ul>
  130. </li>
  131. <li class="nav-group-name">
  132. <a class="nav-group-name-link" href="Extensions.html">Extensions</a>
  133. <ul class="nav-group-tasks">
  134. <li class="nav-group-task">
  135. <a class="nav-group-task-link" href="Extensions/Notification.html">Notification</a>
  136. </li>
  137. <li class="nav-group-task">
  138. <a class="nav-group-task-link" href="Extensions/Notification/Name.html">– Name</a>
  139. </li>
  140. <li class="nav-group-task">
  141. <a class="nav-group-task-link" href="Extensions/Notification/Key.html">– Key</a>
  142. </li>
  143. <li class="nav-group-task">
  144. <a class="nav-group-task-link" href="Extensions/String.html">String</a>
  145. </li>
  146. <li class="nav-group-task">
  147. <a class="nav-group-task-link" href="Extensions/URL.html">URL</a>
  148. </li>
  149. <li class="nav-group-task">
  150. <a class="nav-group-task-link" href="Extensions/URLComponents.html">URLComponents</a>
  151. </li>
  152. <li class="nav-group-task">
  153. <a class="nav-group-task-link" href="Extensions/URLRequest.html">URLRequest</a>
  154. </li>
  155. </ul>
  156. </li>
  157. <li class="nav-group-name">
  158. <a class="nav-group-name-link" href="Functions.html">Functions</a>
  159. <ul class="nav-group-tasks">
  160. <li class="nav-group-task">
  161. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire2eeoiSbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF">==(_:_:)</a>
  162. </li>
  163. <li class="nav-group-task">
  164. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headers10Foundation3URLV011destinationO0_AD0C7OptionsV7optionstAU_So15HTTPURLResponseCtcSg2totF">download(_:method:parameters:encoding:headers:to:)</a>
  165. </li>
  166. <li class="nav-group-task">
  167. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationH0_AD0C7OptionsV7optionstAH_So15HTTPURLResponseCtcSg2totF">download(_:to:)</a>
  168. </li>
  169. <li class="nav-group-task">
  170. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AE3URLV011destinationI0_AD0C7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF">download(resumingWith:to:)</a>
  171. </li>
  172. <li class="nav-group-task">
  173. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire7requestAA11DataRequestCAA21URLRequestConvertible_pF">request(_:)</a>
  174. </li>
  175. <li class="nav-group-task">
  176. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headerstF">request(_:method:parameters:encoding:headers:)</a>
  177. </li>
  178. <li class="nav-group-task">
  179. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6streamAA13StreamRequestCSo10NetServiceC4with_tF">stream(with:)</a>
  180. </li>
  181. <li class="nav-group-task">
  182. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6streamAA13StreamRequestCSS12withHostName_Si4porttF">stream(withHostName:port:)</a>
  183. </li>
  184. <li class="nav-group-task">
  185. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  186. </li>
  187. <li class="nav-group-task">
  188. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  189. </li>
  190. <li class="nav-group-task">
  191. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  192. </li>
  193. <li class="nav-group-task">
  194. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  195. </li>
  196. <li class="nav-group-task">
  197. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  198. </li>
  199. <li class="nav-group-task">
  200. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  201. </li>
  202. <li class="nav-group-task">
  203. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)</a>
  204. </li>
  205. <li class="nav-group-task">
  206. <a class="nav-group-task-link" href="Functions.html#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:with:encodingCompletion:)</a>
  207. </li>
  208. </ul>
  209. </li>
  210. <li class="nav-group-name">
  211. <a class="nav-group-name-link" href="Protocols.html">Protocols</a>
  212. <ul class="nav-group-tasks">
  213. <li class="nav-group-task">
  214. <a class="nav-group-task-link" href="Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a>
  215. </li>
  216. <li class="nav-group-task">
  217. <a class="nav-group-task-link" href="Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a>
  218. </li>
  219. <li class="nav-group-task">
  220. <a class="nav-group-task-link" href="Protocols/ParameterEncoding.html">ParameterEncoding</a>
  221. </li>
  222. <li class="nav-group-task">
  223. <a class="nav-group-task-link" href="Protocols/RequestAdapter.html">RequestAdapter</a>
  224. </li>
  225. <li class="nav-group-task">
  226. <a class="nav-group-task-link" href="Protocols/RequestRetrier.html">RequestRetrier</a>
  227. </li>
  228. <li class="nav-group-task">
  229. <a class="nav-group-task-link" href="Protocols/URLConvertible.html">URLConvertible</a>
  230. </li>
  231. <li class="nav-group-task">
  232. <a class="nav-group-task-link" href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a>
  233. </li>
  234. </ul>
  235. </li>
  236. <li class="nav-group-name">
  237. <a class="nav-group-name-link" href="Structs.html">Structures</a>
  238. <ul class="nav-group-tasks">
  239. <li class="nav-group-task">
  240. <a class="nav-group-task-link" href="Structs/DataResponse.html">DataResponse</a>
  241. </li>
  242. <li class="nav-group-task">
  243. <a class="nav-group-task-link" href="Structs/DataResponseSerializer.html">DataResponseSerializer</a>
  244. </li>
  245. <li class="nav-group-task">
  246. <a class="nav-group-task-link" href="Structs/DefaultDataResponse.html">DefaultDataResponse</a>
  247. </li>
  248. <li class="nav-group-task">
  249. <a class="nav-group-task-link" href="Structs/DefaultDownloadResponse.html">DefaultDownloadResponse</a>
  250. </li>
  251. <li class="nav-group-task">
  252. <a class="nav-group-task-link" href="Structs/DownloadResponse.html">DownloadResponse</a>
  253. </li>
  254. <li class="nav-group-task">
  255. <a class="nav-group-task-link" href="Structs/DownloadResponseSerializer.html">DownloadResponseSerializer</a>
  256. </li>
  257. <li class="nav-group-task">
  258. <a class="nav-group-task-link" href="Structs/JSONEncoding.html">JSONEncoding</a>
  259. </li>
  260. <li class="nav-group-task">
  261. <a class="nav-group-task-link" href="Structs/PropertyListEncoding.html">PropertyListEncoding</a>
  262. </li>
  263. <li class="nav-group-task">
  264. <a class="nav-group-task-link" href="Structs/Timeline.html">Timeline</a>
  265. </li>
  266. <li class="nav-group-task">
  267. <a class="nav-group-task-link" href="Structs/URLEncoding.html">URLEncoding</a>
  268. </li>
  269. <li class="nav-group-task">
  270. <a class="nav-group-task-link" href="Structs/URLEncoding/Destination.html">– Destination</a>
  271. </li>
  272. <li class="nav-group-task">
  273. <a class="nav-group-task-link" href="Structs/URLEncoding/ArrayEncoding.html">– ArrayEncoding</a>
  274. </li>
  275. <li class="nav-group-task">
  276. <a class="nav-group-task-link" href="Structs/URLEncoding/BoolEncoding.html">– BoolEncoding</a>
  277. </li>
  278. </ul>
  279. </li>
  280. <li class="nav-group-name">
  281. <a class="nav-group-name-link" href="Typealiases.html">Type Aliases</a>
  282. <ul class="nav-group-tasks">
  283. <li class="nav-group-task">
  284. <a class="nav-group-task-link" href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a>
  285. </li>
  286. <li class="nav-group-task">
  287. <a class="nav-group-task-link" href="Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a>
  288. </li>
  289. <li class="nav-group-task">
  290. <a class="nav-group-task-link" href="Typealiases.html#/s:9Alamofire22RequestRetryCompletiona">RequestRetryCompletion</a>
  291. </li>
  292. </ul>
  293. </li>
  294. </ul>
  295. </nav>
  296. <article class="main-content">
  297. <section class="section">
  298. <div class="section-content">
  299. <h1>Functions</h1>
  300. <p>The following functions are available globally.</p>
  301. </div>
  302. </section>
  303. <section class="section">
  304. <div class="section-content">
  305. <div class="task-group">
  306. <div class="task-name-container">
  307. <a name="/Data%20Request"></a>
  308. <a name="//apple_ref/swift/Section/Data Request" class="dashAnchor"></a>
  309. <a href="#/Data%20Request">
  310. <h3 class="section-name">Data Request</h3>
  311. </a>
  312. </div>
  313. <ul class="item-container">
  314. <li class="item">
  315. <div>
  316. <code>
  317. <a name="/s:9Alamofire7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headerstF"></a>
  318. <a name="//apple_ref/swift/Function/request(_:method:parameters:encoding:headers:)" class="dashAnchor"></a>
  319. <a class="token" href="#/s:9Alamofire7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headerstF">request(_:method:parameters:encoding:headers:)</a>
  320. </code>
  321. </div>
  322. <div class="height-container">
  323. <div class="pointer-container"></div>
  324. <section class="section">
  325. <div class="pointer"></div>
  326. <div class="abstract">
  327. <p>Creates a <code><a href="Classes/DataRequest.html">DataRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> to retrieve the contents of the specified <code>url</code>,
  328. <code>method</code>, <code>parameters</code>, <code>encoding</code> and <code>headers</code>.</p>
  329. </div>
  330. <div class="declaration">
  331. <h4>Declaration</h4>
  332. <div class="language">
  333. <p class="aside-title">Swift</p>
  334. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">request</span><span class="p">(</span>
  335. <span class="n">_</span> <span class="nv">url</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLConvertible.html">URLConvertible</a></span><span class="p">,</span>
  336. <span class="nv">method</span><span class="p">:</span> <span class="kt"><a href="Enums/HTTPMethod.html">HTTPMethod</a></span> <span class="o">=</span> <span class="o">.</span><span class="k">get</span><span class="p">,</span>
  337. <span class="nv">parameters</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
  338. <span class="nv">encoding</span><span class="p">:</span> <span class="kt"><a href="Protocols/ParameterEncoding.html">ParameterEncoding</a></span> <span class="o">=</span> <span class="kt"><a href="Structs/URLEncoding.html">URLEncoding</a></span><span class="o">.</span><span class="k">default</span><span class="p">,</span>
  339. <span class="nv">headers</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  340. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/DataRequest.html">DataRequest</a></span></code></pre>
  341. </div>
  342. </div>
  343. <div>
  344. <h4>Parameters</h4>
  345. <table class="graybox">
  346. <tbody>
  347. <tr>
  348. <td>
  349. <code>
  350. <em>url</em>
  351. </code>
  352. </td>
  353. <td>
  354. <div>
  355. <p>The URL.</p>
  356. </div>
  357. </td>
  358. </tr>
  359. <tr>
  360. <td>
  361. <code>
  362. <em>method</em>
  363. </code>
  364. </td>
  365. <td>
  366. <div>
  367. <p>The HTTP method. <code>.get</code> by default.</p>
  368. </div>
  369. </td>
  370. </tr>
  371. <tr>
  372. <td>
  373. <code>
  374. <em>parameters</em>
  375. </code>
  376. </td>
  377. <td>
  378. <div>
  379. <p>The parameters. <code>nil</code> by default.</p>
  380. </div>
  381. </td>
  382. </tr>
  383. <tr>
  384. <td>
  385. <code>
  386. <em>encoding</em>
  387. </code>
  388. </td>
  389. <td>
  390. <div>
  391. <p>The parameter encoding. <code><a href="Structs/URLEncoding.html#/s:9Alamofire11URLEncodingV7defaultACvpZ">URLEncoding.default</a></code> by default.</p>
  392. </div>
  393. </td>
  394. </tr>
  395. <tr>
  396. <td>
  397. <code>
  398. <em>headers</em>
  399. </code>
  400. </td>
  401. <td>
  402. <div>
  403. <p>The HTTP headers. <code>nil</code> by default.</p>
  404. </div>
  405. </td>
  406. </tr>
  407. </tbody>
  408. </table>
  409. </div>
  410. <div>
  411. <h4>Return Value</h4>
  412. <p>The created <code><a href="Classes/DataRequest.html">DataRequest</a></code>.</p>
  413. </div>
  414. </section>
  415. </div>
  416. </li>
  417. <li class="item">
  418. <div>
  419. <code>
  420. <a name="/s:9Alamofire7requestAA11DataRequestCAA21URLRequestConvertible_pF"></a>
  421. <a name="//apple_ref/swift/Function/request(_:)" class="dashAnchor"></a>
  422. <a class="token" href="#/s:9Alamofire7requestAA11DataRequestCAA21URLRequestConvertible_pF">request(_:)</a>
  423. </code>
  424. </div>
  425. <div class="height-container">
  426. <div class="pointer-container"></div>
  427. <section class="section">
  428. <div class="pointer"></div>
  429. <div class="abstract">
  430. <p>Creates a <code><a href="Classes/DataRequest.html">DataRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> to retrieve the contents of a URL based on the
  431. specified <code>urlRequest</code>.</p>
  432. </div>
  433. <div class="declaration">
  434. <h4>Declaration</h4>
  435. <div class="language">
  436. <p class="aside-title">Swift</p>
  437. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">request</span><span class="p">(</span><span class="n">_</span> <span class="nv">urlRequest</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="Classes/DataRequest.html">DataRequest</a></span></code></pre>
  438. </div>
  439. </div>
  440. <div>
  441. <h4>Parameters</h4>
  442. <table class="graybox">
  443. <tbody>
  444. <tr>
  445. <td>
  446. <code>
  447. <em>urlRequest</em>
  448. </code>
  449. </td>
  450. <td>
  451. <div>
  452. <p>The URL request</p>
  453. </div>
  454. </td>
  455. </tr>
  456. </tbody>
  457. </table>
  458. </div>
  459. <div>
  460. <h4>Return Value</h4>
  461. <p>The created <code><a href="Classes/DataRequest.html">DataRequest</a></code>.</p>
  462. </div>
  463. </section>
  464. </div>
  465. </li>
  466. </ul>
  467. </div>
  468. <div class="task-group">
  469. <div class="task-name-container">
  470. <a name="/URL%20Request"></a>
  471. <a name="//apple_ref/swift/Section/URL Request" class="dashAnchor"></a>
  472. <a href="#/URL%20Request">
  473. <h3 class="section-name">URL Request</h3>
  474. </a>
  475. </div>
  476. <ul class="item-container">
  477. <li class="item">
  478. <div>
  479. <code>
  480. <a name="/s:9Alamofire8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headers10Foundation3URLV011destinationO0_AD0C7OptionsV7optionstAU_So15HTTPURLResponseCtcSg2totF"></a>
  481. <a name="//apple_ref/swift/Function/download(_:method:parameters:encoding:headers:to:)" class="dashAnchor"></a>
  482. <a class="token" href="#/s:9Alamofire8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headers10Foundation3URLV011destinationO0_AD0C7OptionsV7optionstAU_So15HTTPURLResponseCtcSg2totF">download(_:method:parameters:encoding:headers:to:)</a>
  483. </code>
  484. </div>
  485. <div class="height-container">
  486. <div class="pointer-container"></div>
  487. <section class="section">
  488. <div class="pointer"></div>
  489. <div class="abstract">
  490. <p>Creates a <code><a href="Classes/DownloadRequest.html">DownloadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> to retrieve the contents of the specified <code>url</code>,
  491. <code>method</code>, <code>parameters</code>, <code>encoding</code>, <code>headers</code> and save them to the <code>destination</code>.</p>
  492. <p>If <code>destination</code> is not specified, the contents will remain in the temporary location determined by the
  493. underlying URL session.</p>
  494. </div>
  495. <div class="declaration">
  496. <h4>Declaration</h4>
  497. <div class="language">
  498. <p class="aside-title">Swift</p>
  499. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">download</span><span class="p">(</span>
  500. <span class="n">_</span> <span class="nv">url</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLConvertible.html">URLConvertible</a></span><span class="p">,</span>
  501. <span class="nv">method</span><span class="p">:</span> <span class="kt"><a href="Enums/HTTPMethod.html">HTTPMethod</a></span> <span class="o">=</span> <span class="o">.</span><span class="k">get</span><span class="p">,</span>
  502. <span class="nv">parameters</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
  503. <span class="nv">encoding</span><span class="p">:</span> <span class="kt"><a href="Protocols/ParameterEncoding.html">ParameterEncoding</a></span> <span class="o">=</span> <span class="kt"><a href="Structs/URLEncoding.html">URLEncoding</a></span><span class="o">.</span><span class="k">default</span><span class="p">,</span>
  504. <span class="nv">headers</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
  505. <span class="n">to</span> <span class="nv">destination</span><span class="p">:</span> <span class="kt"><a href="Classes/DownloadRequest.html">DownloadRequest</a></span><span class="o">.</span><span class="kt">DownloadFileDestination</span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  506. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/DownloadRequest.html">DownloadRequest</a></span></code></pre>
  507. </div>
  508. </div>
  509. <div>
  510. <h4>Parameters</h4>
  511. <table class="graybox">
  512. <tbody>
  513. <tr>
  514. <td>
  515. <code>
  516. <em>url</em>
  517. </code>
  518. </td>
  519. <td>
  520. <div>
  521. <p>The URL.</p>
  522. </div>
  523. </td>
  524. </tr>
  525. <tr>
  526. <td>
  527. <code>
  528. <em>method</em>
  529. </code>
  530. </td>
  531. <td>
  532. <div>
  533. <p>The HTTP method. <code>.get</code> by default.</p>
  534. </div>
  535. </td>
  536. </tr>
  537. <tr>
  538. <td>
  539. <code>
  540. <em>parameters</em>
  541. </code>
  542. </td>
  543. <td>
  544. <div>
  545. <p>The parameters. <code>nil</code> by default.</p>
  546. </div>
  547. </td>
  548. </tr>
  549. <tr>
  550. <td>
  551. <code>
  552. <em>encoding</em>
  553. </code>
  554. </td>
  555. <td>
  556. <div>
  557. <p>The parameter encoding. <code><a href="Structs/URLEncoding.html#/s:9Alamofire11URLEncodingV7defaultACvpZ">URLEncoding.default</a></code> by default.</p>
  558. </div>
  559. </td>
  560. </tr>
  561. <tr>
  562. <td>
  563. <code>
  564. <em>headers</em>
  565. </code>
  566. </td>
  567. <td>
  568. <div>
  569. <p>The HTTP headers. <code>nil</code> by default.</p>
  570. </div>
  571. </td>
  572. </tr>
  573. <tr>
  574. <td>
  575. <code>
  576. <em>destination</em>
  577. </code>
  578. </td>
  579. <td>
  580. <div>
  581. <p>The closure used to determine the destination of the downloaded file. <code>nil</code> by default.</p>
  582. </div>
  583. </td>
  584. </tr>
  585. </tbody>
  586. </table>
  587. </div>
  588. <div>
  589. <h4>Return Value</h4>
  590. <p>The created <code><a href="Classes/DownloadRequest.html">DownloadRequest</a></code>.</p>
  591. </div>
  592. </section>
  593. </div>
  594. </li>
  595. <li class="item">
  596. <div>
  597. <code>
  598. <a name="/s:9Alamofire8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationH0_AD0C7OptionsV7optionstAH_So15HTTPURLResponseCtcSg2totF"></a>
  599. <a name="//apple_ref/swift/Function/download(_:to:)" class="dashAnchor"></a>
  600. <a class="token" href="#/s:9Alamofire8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationH0_AD0C7OptionsV7optionstAH_So15HTTPURLResponseCtcSg2totF">download(_:to:)</a>
  601. </code>
  602. </div>
  603. <div class="height-container">
  604. <div class="pointer-container"></div>
  605. <section class="section">
  606. <div class="pointer"></div>
  607. <div class="abstract">
  608. <p>Creates a <code><a href="Classes/DownloadRequest.html">DownloadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> to retrieve the contents of a URL based on the
  609. specified <code>urlRequest</code> and save them to the <code>destination</code>.</p>
  610. <p>If <code>destination</code> is not specified, the contents will remain in the temporary location determined by the
  611. underlying URL session.</p>
  612. </div>
  613. <div class="declaration">
  614. <h4>Declaration</h4>
  615. <div class="language">
  616. <p class="aside-title">Swift</p>
  617. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">download</span><span class="p">(</span>
  618. <span class="n">_</span> <span class="nv">urlRequest</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">,</span>
  619. <span class="n">to</span> <span class="nv">destination</span><span class="p">:</span> <span class="kt"><a href="Classes/DownloadRequest.html">DownloadRequest</a></span><span class="o">.</span><span class="kt">DownloadFileDestination</span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  620. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/DownloadRequest.html">DownloadRequest</a></span></code></pre>
  621. </div>
  622. </div>
  623. <div>
  624. <h4>Parameters</h4>
  625. <table class="graybox">
  626. <tbody>
  627. <tr>
  628. <td>
  629. <code>
  630. <em>urlRequest</em>
  631. </code>
  632. </td>
  633. <td>
  634. <div>
  635. <p>The URL request.</p>
  636. </div>
  637. </td>
  638. </tr>
  639. <tr>
  640. <td>
  641. <code>
  642. <em>destination</em>
  643. </code>
  644. </td>
  645. <td>
  646. <div>
  647. <p>The closure used to determine the destination of the downloaded file. <code>nil</code> by default.</p>
  648. </div>
  649. </td>
  650. </tr>
  651. </tbody>
  652. </table>
  653. </div>
  654. <div>
  655. <h4>Return Value</h4>
  656. <p>The created <code><a href="Classes/DownloadRequest.html">DownloadRequest</a></code>.</p>
  657. </div>
  658. </section>
  659. </div>
  660. </li>
  661. </ul>
  662. </div>
  663. <div class="task-group">
  664. <div class="task-name-container">
  665. <a name="/Resume%20Data"></a>
  666. <a name="//apple_ref/swift/Section/Resume Data" class="dashAnchor"></a>
  667. <a href="#/Resume%20Data">
  668. <h3 class="section-name">Resume Data</h3>
  669. </a>
  670. </div>
  671. <ul class="item-container">
  672. <li class="item">
  673. <div>
  674. <code>
  675. <a name="/s:9Alamofire8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AE3URLV011destinationI0_AD0C7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF"></a>
  676. <a name="//apple_ref/swift/Function/download(resumingWith:to:)" class="dashAnchor"></a>
  677. <a class="token" href="#/s:9Alamofire8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AE3URLV011destinationI0_AD0C7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF">download(resumingWith:to:)</a>
  678. </code>
  679. </div>
  680. <div class="height-container">
  681. <div class="pointer-container"></div>
  682. <section class="section">
  683. <div class="pointer"></div>
  684. <div class="abstract">
  685. <p>Creates a <code><a href="Classes/DownloadRequest.html">DownloadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the <code>resumeData</code> produced from a
  686. previous request cancellation to retrieve the contents of the original request and save them to the <code>destination</code>.</p>
  687. <p>If <code>destination</code> is not specified, the contents will remain in the temporary location determined by the
  688. underlying URL session.</p>
  689. <p>On the latest release of all the Apple platforms (iOS 10, macOS 10.12, tvOS 10, watchOS 3), <code>resumeData</code> is broken
  690. on background URL session configurations. There&rsquo;s an underlying bug in the <code>resumeData</code> generation logic where the
  691. data is written incorrectly and will always fail to resume the download. For more information about the bug and
  692. possible workarounds, please refer to the following Stack Overflow post:</p>
  693. <ul>
  694. <li><p><a href="http://stackoverflow.com/a/39347461/1342462">http://stackoverflow.com/a/39347461/1342462</a></p></li>
  695. </ul>
  696. </div>
  697. <div class="declaration">
  698. <h4>Declaration</h4>
  699. <div class="language">
  700. <p class="aside-title">Swift</p>
  701. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">download</span><span class="p">(</span>
  702. <span class="n">resumingWith</span> <span class="nv">resumeData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span>
  703. <span class="n">to</span> <span class="nv">destination</span><span class="p">:</span> <span class="kt"><a href="Classes/DownloadRequest.html">DownloadRequest</a></span><span class="o">.</span><span class="kt">DownloadFileDestination</span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  704. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/DownloadRequest.html">DownloadRequest</a></span></code></pre>
  705. </div>
  706. </div>
  707. <div>
  708. <h4>Parameters</h4>
  709. <table class="graybox">
  710. <tbody>
  711. <tr>
  712. <td>
  713. <code>
  714. <em>resumeData</em>
  715. </code>
  716. </td>
  717. <td>
  718. <div>
  719. <p>The resume data. This is an opaque data blob produced by <code>URLSessionDownloadTask</code>
  720. when a task is cancelled. See <code>URLSession -downloadTask(withResumeData:)</code> for additional
  721. information.</p>
  722. </div>
  723. </td>
  724. </tr>
  725. <tr>
  726. <td>
  727. <code>
  728. <em>destination</em>
  729. </code>
  730. </td>
  731. <td>
  732. <div>
  733. <p>The closure used to determine the destination of the downloaded file. <code>nil</code> by default.</p>
  734. </div>
  735. </td>
  736. </tr>
  737. </tbody>
  738. </table>
  739. </div>
  740. <div>
  741. <h4>Return Value</h4>
  742. <p>The created <code><a href="Classes/DownloadRequest.html">DownloadRequest</a></code>.</p>
  743. </div>
  744. </section>
  745. </div>
  746. </li>
  747. </ul>
  748. </div>
  749. <div class="task-group">
  750. <div class="task-name-container">
  751. <a name="/File"></a>
  752. <a name="//apple_ref/swift/Section/File" class="dashAnchor"></a>
  753. <a href="#/File">
  754. <h3 class="section-name">File</h3>
  755. </a>
  756. </div>
  757. <ul class="item-container">
  758. <li class="item">
  759. <div>
  760. <code>
  761. <a name="/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF"></a>
  762. <a name="//apple_ref/swift/Function/upload(_:to:method:headers:)" class="dashAnchor"></a>
  763. <a class="token" href="#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  764. </code>
  765. </div>
  766. <div class="height-container">
  767. <div class="pointer-container"></div>
  768. <section class="section">
  769. <div class="pointer"></div>
  770. <div class="abstract">
  771. <p>Creates an <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the specified <code>url</code>, <code>method</code> and <code>headers</code>
  772. for uploading the <code>file</code>.</p>
  773. </div>
  774. <div class="declaration">
  775. <h4>Declaration</h4>
  776. <div class="language">
  777. <p class="aside-title">Swift</p>
  778. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  779. <span class="n">_</span> <span class="nv">fileURL</span><span class="p">:</span> <span class="kt">URL</span><span class="p">,</span>
  780. <span class="n">to</span> <span class="nv">url</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLConvertible.html">URLConvertible</a></span><span class="p">,</span>
  781. <span class="nv">method</span><span class="p">:</span> <span class="kt"><a href="Enums/HTTPMethod.html">HTTPMethod</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">post</span><span class="p">,</span>
  782. <span class="nv">headers</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  783. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  784. </div>
  785. </div>
  786. <div>
  787. <h4>Parameters</h4>
  788. <table class="graybox">
  789. <tbody>
  790. <tr>
  791. <td>
  792. <code>
  793. <em>file</em>
  794. </code>
  795. </td>
  796. <td>
  797. <div>
  798. <p>The file to upload.</p>
  799. </div>
  800. </td>
  801. </tr>
  802. <tr>
  803. <td>
  804. <code>
  805. <em>url</em>
  806. </code>
  807. </td>
  808. <td>
  809. <div>
  810. <p>The URL.</p>
  811. </div>
  812. </td>
  813. </tr>
  814. <tr>
  815. <td>
  816. <code>
  817. <em>method</em>
  818. </code>
  819. </td>
  820. <td>
  821. <div>
  822. <p>The HTTP method. <code>.post</code> by default.</p>
  823. </div>
  824. </td>
  825. </tr>
  826. <tr>
  827. <td>
  828. <code>
  829. <em>headers</em>
  830. </code>
  831. </td>
  832. <td>
  833. <div>
  834. <p>The HTTP headers. <code>nil</code> by default.</p>
  835. </div>
  836. </td>
  837. </tr>
  838. </tbody>
  839. </table>
  840. </div>
  841. <div>
  842. <h4>Return Value</h4>
  843. <p>The created <code><a href="Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  844. </div>
  845. </section>
  846. </div>
  847. </li>
  848. <li class="item">
  849. <div>
  850. <code>
  851. <a name="/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF"></a>
  852. <a name="//apple_ref/swift/Function/upload(_:with:)" class="dashAnchor"></a>
  853. <a class="token" href="#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  854. </code>
  855. </div>
  856. <div class="height-container">
  857. <div class="pointer-container"></div>
  858. <section class="section">
  859. <div class="pointer"></div>
  860. <div class="abstract">
  861. <p>Creates a <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the specified <code>urlRequest</code> for
  862. uploading the <code>file</code>.</p>
  863. </div>
  864. <div class="declaration">
  865. <h4>Declaration</h4>
  866. <div class="language">
  867. <p class="aside-title">Swift</p>
  868. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span><span class="n">_</span> <span class="nv">fileURL</span><span class="p">:</span> <span class="kt">URL</span><span class="p">,</span> <span class="n">with</span> <span class="nv">urlRequest</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  869. </div>
  870. </div>
  871. <div>
  872. <h4>Parameters</h4>
  873. <table class="graybox">
  874. <tbody>
  875. <tr>
  876. <td>
  877. <code>
  878. <em>file</em>
  879. </code>
  880. </td>
  881. <td>
  882. <div>
  883. <p>The file to upload.</p>
  884. </div>
  885. </td>
  886. </tr>
  887. <tr>
  888. <td>
  889. <code>
  890. <em>urlRequest</em>
  891. </code>
  892. </td>
  893. <td>
  894. <div>
  895. <p>The URL request.</p>
  896. </div>
  897. </td>
  898. </tr>
  899. </tbody>
  900. </table>
  901. </div>
  902. <div>
  903. <h4>Return Value</h4>
  904. <p>The created <code><a href="Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  905. </div>
  906. </section>
  907. </div>
  908. </li>
  909. </ul>
  910. </div>
  911. <div class="task-group">
  912. <div class="task-name-container">
  913. <a name="/Data"></a>
  914. <a name="//apple_ref/swift/Section/Data" class="dashAnchor"></a>
  915. <a href="#/Data">
  916. <h3 class="section-name">Data</h3>
  917. </a>
  918. </div>
  919. <ul class="item-container">
  920. <li class="item">
  921. <div>
  922. <code>
  923. <a name="/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF"></a>
  924. <a name="//apple_ref/swift/Function/upload(_:to:method:headers:)" class="dashAnchor"></a>
  925. <a class="token" href="#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  926. </code>
  927. </div>
  928. <div class="height-container">
  929. <div class="pointer-container"></div>
  930. <section class="section">
  931. <div class="pointer"></div>
  932. <div class="abstract">
  933. <p>Creates an <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the specified <code>url</code>, <code>method</code> and <code>headers</code>
  934. for uploading the <code>data</code>.</p>
  935. </div>
  936. <div class="declaration">
  937. <h4>Declaration</h4>
  938. <div class="language">
  939. <p class="aside-title">Swift</p>
  940. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  941. <span class="n">_</span> <span class="nv">data</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span>
  942. <span class="n">to</span> <span class="nv">url</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLConvertible.html">URLConvertible</a></span><span class="p">,</span>
  943. <span class="nv">method</span><span class="p">:</span> <span class="kt"><a href="Enums/HTTPMethod.html">HTTPMethod</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">post</span><span class="p">,</span>
  944. <span class="nv">headers</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  945. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  946. </div>
  947. </div>
  948. <div>
  949. <h4>Parameters</h4>
  950. <table class="graybox">
  951. <tbody>
  952. <tr>
  953. <td>
  954. <code>
  955. <em>data</em>
  956. </code>
  957. </td>
  958. <td>
  959. <div>
  960. <p>The data to upload.</p>
  961. </div>
  962. </td>
  963. </tr>
  964. <tr>
  965. <td>
  966. <code>
  967. <em>url</em>
  968. </code>
  969. </td>
  970. <td>
  971. <div>
  972. <p>The URL.</p>
  973. </div>
  974. </td>
  975. </tr>
  976. <tr>
  977. <td>
  978. <code>
  979. <em>method</em>
  980. </code>
  981. </td>
  982. <td>
  983. <div>
  984. <p>The HTTP method. <code>.post</code> by default.</p>
  985. </div>
  986. </td>
  987. </tr>
  988. <tr>
  989. <td>
  990. <code>
  991. <em>headers</em>
  992. </code>
  993. </td>
  994. <td>
  995. <div>
  996. <p>The HTTP headers. <code>nil</code> by default.</p>
  997. </div>
  998. </td>
  999. </tr>
  1000. </tbody>
  1001. </table>
  1002. </div>
  1003. <div>
  1004. <h4>Return Value</h4>
  1005. <p>The created <code><a href="Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1006. </div>
  1007. </section>
  1008. </div>
  1009. </li>
  1010. <li class="item">
  1011. <div>
  1012. <code>
  1013. <a name="/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF"></a>
  1014. <a name="//apple_ref/swift/Function/upload(_:with:)" class="dashAnchor"></a>
  1015. <a class="token" href="#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  1016. </code>
  1017. </div>
  1018. <div class="height-container">
  1019. <div class="pointer-container"></div>
  1020. <section class="section">
  1021. <div class="pointer"></div>
  1022. <div class="abstract">
  1023. <p>Creates an <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the specified <code>urlRequest</code> for
  1024. uploading the <code>data</code>.</p>
  1025. </div>
  1026. <div class="declaration">
  1027. <h4>Declaration</h4>
  1028. <div class="language">
  1029. <p class="aside-title">Swift</p>
  1030. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span><span class="n">_</span> <span class="nv">data</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span> <span class="n">with</span> <span class="nv">urlRequest</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  1031. </div>
  1032. </div>
  1033. <div>
  1034. <h4>Parameters</h4>
  1035. <table class="graybox">
  1036. <tbody>
  1037. <tr>
  1038. <td>
  1039. <code>
  1040. <em>data</em>
  1041. </code>
  1042. </td>
  1043. <td>
  1044. <div>
  1045. <p>The data to upload.</p>
  1046. </div>
  1047. </td>
  1048. </tr>
  1049. <tr>
  1050. <td>
  1051. <code>
  1052. <em>urlRequest</em>
  1053. </code>
  1054. </td>
  1055. <td>
  1056. <div>
  1057. <p>The URL request.</p>
  1058. </div>
  1059. </td>
  1060. </tr>
  1061. </tbody>
  1062. </table>
  1063. </div>
  1064. <div>
  1065. <h4>Return Value</h4>
  1066. <p>The created <code><a href="Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1067. </div>
  1068. </section>
  1069. </div>
  1070. </li>
  1071. </ul>
  1072. </div>
  1073. <div class="task-group">
  1074. <div class="task-name-container">
  1075. <a name="/InputStream"></a>
  1076. <a name="//apple_ref/swift/Section/InputStream" class="dashAnchor"></a>
  1077. <a href="#/InputStream">
  1078. <h3 class="section-name">InputStream</h3>
  1079. </a>
  1080. </div>
  1081. <ul class="item-container">
  1082. <li class="item">
  1083. <div>
  1084. <code>
  1085. <a name="/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF"></a>
  1086. <a name="//apple_ref/swift/Function/upload(_:to:method:headers:)" class="dashAnchor"></a>
  1087. <a class="token" href="#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  1088. </code>
  1089. </div>
  1090. <div class="height-container">
  1091. <div class="pointer-container"></div>
  1092. <section class="section">
  1093. <div class="pointer"></div>
  1094. <div class="abstract">
  1095. <p>Creates an <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the specified <code>url</code>, <code>method</code> and <code>headers</code>
  1096. for uploading the <code>stream</code>.</p>
  1097. </div>
  1098. <div class="declaration">
  1099. <h4>Declaration</h4>
  1100. <div class="language">
  1101. <p class="aside-title">Swift</p>
  1102. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1103. <span class="n">_</span> <span class="nv">stream</span><span class="p">:</span> <span class="kt">InputStream</span><span class="p">,</span>
  1104. <span class="n">to</span> <span class="nv">url</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLConvertible.html">URLConvertible</a></span><span class="p">,</span>
  1105. <span class="nv">method</span><span class="p">:</span> <span class="kt"><a href="Enums/HTTPMethod.html">HTTPMethod</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">post</span><span class="p">,</span>
  1106. <span class="nv">headers</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span>
  1107. <span class="o">-&gt;</span> <span class="kt"><a href="Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  1108. </div>
  1109. </div>
  1110. <div>
  1111. <h4>Parameters</h4>
  1112. <table class="graybox">
  1113. <tbody>
  1114. <tr>
  1115. <td>
  1116. <code>
  1117. <em>stream</em>
  1118. </code>
  1119. </td>
  1120. <td>
  1121. <div>
  1122. <p>The stream to upload.</p>
  1123. </div>
  1124. </td>
  1125. </tr>
  1126. <tr>
  1127. <td>
  1128. <code>
  1129. <em>url</em>
  1130. </code>
  1131. </td>
  1132. <td>
  1133. <div>
  1134. <p>The URL.</p>
  1135. </div>
  1136. </td>
  1137. </tr>
  1138. <tr>
  1139. <td>
  1140. <code>
  1141. <em>method</em>
  1142. </code>
  1143. </td>
  1144. <td>
  1145. <div>
  1146. <p>The HTTP method. <code>.post</code> by default.</p>
  1147. </div>
  1148. </td>
  1149. </tr>
  1150. <tr>
  1151. <td>
  1152. <code>
  1153. <em>headers</em>
  1154. </code>
  1155. </td>
  1156. <td>
  1157. <div>
  1158. <p>The HTTP headers. <code>nil</code> by default.</p>
  1159. </div>
  1160. </td>
  1161. </tr>
  1162. </tbody>
  1163. </table>
  1164. </div>
  1165. <div>
  1166. <h4>Return Value</h4>
  1167. <p>The created <code><a href="Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1168. </div>
  1169. </section>
  1170. </div>
  1171. </li>
  1172. <li class="item">
  1173. <div>
  1174. <code>
  1175. <a name="/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF"></a>
  1176. <a name="//apple_ref/swift/Function/upload(_:with:)" class="dashAnchor"></a>
  1177. <a class="token" href="#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  1178. </code>
  1179. </div>
  1180. <div class="height-container">
  1181. <div class="pointer-container"></div>
  1182. <section class="section">
  1183. <div class="pointer"></div>
  1184. <div class="abstract">
  1185. <p>Creates an <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> from the specified <code>urlRequest</code> for
  1186. uploading the <code>stream</code>.</p>
  1187. </div>
  1188. <div class="declaration">
  1189. <h4>Declaration</h4>
  1190. <div class="language">
  1191. <p class="aside-title">Swift</p>
  1192. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span><span class="n">_</span> <span class="nv">stream</span><span class="p">:</span> <span class="kt">InputStream</span><span class="p">,</span> <span class="n">with</span> <span class="nv">urlRequest</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  1193. </div>
  1194. </div>
  1195. <div>
  1196. <h4>Parameters</h4>
  1197. <table class="graybox">
  1198. <tbody>
  1199. <tr>
  1200. <td>
  1201. <code>
  1202. <em>urlRequest</em>
  1203. </code>
  1204. </td>
  1205. <td>
  1206. <div>
  1207. <p>The URL request.</p>
  1208. </div>
  1209. </td>
  1210. </tr>
  1211. <tr>
  1212. <td>
  1213. <code>
  1214. <em>stream</em>
  1215. </code>
  1216. </td>
  1217. <td>
  1218. <div>
  1219. <p>The stream to upload.</p>
  1220. </div>
  1221. </td>
  1222. </tr>
  1223. </tbody>
  1224. </table>
  1225. </div>
  1226. <div>
  1227. <h4>Return Value</h4>
  1228. <p>The created <code><a href="Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1229. </div>
  1230. </section>
  1231. </div>
  1232. </li>
  1233. </ul>
  1234. </div>
  1235. <div class="task-group">
  1236. <div class="task-name-container">
  1237. <a name="/MultipartFormData"></a>
  1238. <a name="//apple_ref/swift/Section/MultipartFormData" class="dashAnchor"></a>
  1239. <a href="#/MultipartFormData">
  1240. <h3 class="section-name">MultipartFormData</h3>
  1241. </a>
  1242. </div>
  1243. <ul class="item-container">
  1244. <li class="item">
  1245. <div>
  1246. <code>
  1247. <a name="/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF"></a>
  1248. <a name="//apple_ref/swift/Function/upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)" class="dashAnchor"></a>
  1249. <a class="token" href="#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)</a>
  1250. </code>
  1251. </div>
  1252. <div class="height-container">
  1253. <div class="pointer-container"></div>
  1254. <section class="section">
  1255. <div class="pointer"></div>
  1256. <div class="abstract">
  1257. <p>Encodes <code>multipartFormData</code> using <code>encodingMemoryThreshold</code> with the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> and calls
  1258. <code>encodingCompletion</code> with new <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the <code>url</code>, <code>method</code> and <code>headers</code>.</p>
  1259. <p>It is important to understand the memory implications of uploading <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code>. If the cummulative
  1260. payload is small, encoding the data in-memory and directly uploading to a server is the by far the most
  1261. efficient approach. However, if the payload is too large, encoding the data in-memory could cause your app to
  1262. be terminated. Larger payloads must first be written to disk using input and output streams to keep the memory
  1263. footprint low, then the data can be uploaded as a stream from the resulting file. Streaming from disk MUST be
  1264. used for larger payloads such as video content.</p>
  1265. <p>The <code>encodingMemoryThreshold</code> parameter allows Alamofire to automatically determine whether to encode in-memory
  1266. or stream from disk. If the content length of the <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code> is below the <code>encodingMemoryThreshold</code>,
  1267. encoding takes place in-memory. If the content length exceeds the threshold, the data is streamed to disk
  1268. during the encoding process. Then the result is uploaded as data or as a stream depending on which encoding
  1269. technique was used.</p>
  1270. </div>
  1271. <div class="declaration">
  1272. <h4>Declaration</h4>
  1273. <div class="language">
  1274. <p class="aside-title">Swift</p>
  1275. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1276. <span class="nv">multipartFormData</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt"><a href="Classes/MultipartFormData.html">MultipartFormData</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">,</span>
  1277. <span class="n">usingThreshold</span> <span class="nv">encodingMemoryThreshold</span><span class="p">:</span> <span class="kt">UInt64</span> <span class="o">=</span> <span class="kt"><a href="Classes/SessionManager.html">SessionManager</a></span><span class="o">.</span><span class="n">multipartFormDataEncodingMemoryThreshold</span><span class="p">,</span>
  1278. <span class="n">to</span> <span class="nv">url</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLConvertible.html">URLConvertible</a></span><span class="p">,</span>
  1279. <span class="nv">method</span><span class="p">:</span> <span class="kt"><a href="Enums/HTTPMethod.html">HTTPMethod</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">post</span><span class="p">,</span>
  1280. <span class="nv">headers</span><span class="p">:</span> <span class="kt"><a href="Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span>
  1281. <span class="nv">encodingCompletion</span><span class="p">:</span> <span class="p">((</span><span class="kt"><a href="Classes/SessionManager.html">SessionManager</a></span><span class="o">.</span><span class="kt">MultipartFormDataEncodingResult</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?)</span></code></pre>
  1282. </div>
  1283. </div>
  1284. <div>
  1285. <h4>Parameters</h4>
  1286. <table class="graybox">
  1287. <tbody>
  1288. <tr>
  1289. <td>
  1290. <code>
  1291. <em>multipartFormData</em>
  1292. </code>
  1293. </td>
  1294. <td>
  1295. <div>
  1296. <p>The closure used to append body parts to the <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code>.</p>
  1297. </div>
  1298. </td>
  1299. </tr>
  1300. <tr>
  1301. <td>
  1302. <code>
  1303. <em>encodingMemoryThreshold</em>
  1304. </code>
  1305. </td>
  1306. <td>
  1307. <div>
  1308. <p>The encoding memory threshold in bytes.
  1309. <code>multipartFormDataEncodingMemoryThreshold</code> by default.</p>
  1310. </div>
  1311. </td>
  1312. </tr>
  1313. <tr>
  1314. <td>
  1315. <code>
  1316. <em>url</em>
  1317. </code>
  1318. </td>
  1319. <td>
  1320. <div>
  1321. <p>The URL.</p>
  1322. </div>
  1323. </td>
  1324. </tr>
  1325. <tr>
  1326. <td>
  1327. <code>
  1328. <em>method</em>
  1329. </code>
  1330. </td>
  1331. <td>
  1332. <div>
  1333. <p>The HTTP method. <code>.post</code> by default.</p>
  1334. </div>
  1335. </td>
  1336. </tr>
  1337. <tr>
  1338. <td>
  1339. <code>
  1340. <em>headers</em>
  1341. </code>
  1342. </td>
  1343. <td>
  1344. <div>
  1345. <p>The HTTP headers. <code>nil</code> by default.</p>
  1346. </div>
  1347. </td>
  1348. </tr>
  1349. <tr>
  1350. <td>
  1351. <code>
  1352. <em>encodingCompletion</em>
  1353. </code>
  1354. </td>
  1355. <td>
  1356. <div>
  1357. <p>The closure called when the <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code> encoding is complete.</p>
  1358. </div>
  1359. </td>
  1360. </tr>
  1361. </tbody>
  1362. </table>
  1363. </div>
  1364. </section>
  1365. </div>
  1366. </li>
  1367. <li class="item">
  1368. <div>
  1369. <code>
  1370. <a name="/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF"></a>
  1371. <a name="//apple_ref/swift/Function/upload(multipartFormData:usingThreshold:with:encodingCompletion:)" class="dashAnchor"></a>
  1372. <a class="token" href="#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:with:encodingCompletion:)</a>
  1373. </code>
  1374. </div>
  1375. <div class="height-container">
  1376. <div class="pointer-container"></div>
  1377. <section class="section">
  1378. <div class="pointer"></div>
  1379. <div class="abstract">
  1380. <p>Encodes <code>multipartFormData</code> using <code>encodingMemoryThreshold</code> and the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> and
  1381. calls <code>encodingCompletion</code> with new <code><a href="Classes/UploadRequest.html">UploadRequest</a></code> using the <code>urlRequest</code>.</p>
  1382. <p>It is important to understand the memory implications of uploading <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code>. If the cummulative
  1383. payload is small, encoding the data in-memory and directly uploading to a server is the by far the most
  1384. efficient approach. However, if the payload is too large, encoding the data in-memory could cause your app to
  1385. be terminated. Larger payloads must first be written to disk using input and output streams to keep the memory
  1386. footprint low, then the data can be uploaded as a stream from the resulting file. Streaming from disk MUST be
  1387. used for larger payloads such as video content.</p>
  1388. <p>The <code>encodingMemoryThreshold</code> parameter allows Alamofire to automatically determine whether to encode in-memory
  1389. or stream from disk. If the content length of the <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code> is below the <code>encodingMemoryThreshold</code>,
  1390. encoding takes place in-memory. If the content length exceeds the threshold, the data is streamed to disk
  1391. during the encoding process. Then the result is uploaded as data or as a stream depending on which encoding
  1392. technique was used.</p>
  1393. </div>
  1394. <div class="declaration">
  1395. <h4>Declaration</h4>
  1396. <div class="language">
  1397. <p class="aside-title">Swift</p>
  1398. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1399. <span class="nv">multipartFormData</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="kt"><a href="Classes/MultipartFormData.html">MultipartFormData</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">,</span>
  1400. <span class="n">usingThreshold</span> <span class="nv">encodingMemoryThreshold</span><span class="p">:</span> <span class="kt">UInt64</span> <span class="o">=</span> <span class="kt"><a href="Classes/SessionManager.html">SessionManager</a></span><span class="o">.</span><span class="n">multipartFormDataEncodingMemoryThreshold</span><span class="p">,</span>
  1401. <span class="n">with</span> <span class="nv">urlRequest</span><span class="p">:</span> <span class="kt"><a href="Protocols/URLRequestConvertible.html">URLRequestConvertible</a></span><span class="p">,</span>
  1402. <span class="nv">encodingCompletion</span><span class="p">:</span> <span class="p">((</span><span class="kt"><a href="Classes/SessionManager.html">SessionManager</a></span><span class="o">.</span><span class="kt">MultipartFormDataEncodingResult</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?)</span></code></pre>
  1403. </div>
  1404. </div>
  1405. <div>
  1406. <h4>Parameters</h4>
  1407. <table class="graybox">
  1408. <tbody>
  1409. <tr>
  1410. <td>
  1411. <code>
  1412. <em>multipartFormData</em>
  1413. </code>
  1414. </td>
  1415. <td>
  1416. <div>
  1417. <p>The closure used to append body parts to the <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code>.</p>
  1418. </div>
  1419. </td>
  1420. </tr>
  1421. <tr>
  1422. <td>
  1423. <code>
  1424. <em>encodingMemoryThreshold</em>
  1425. </code>
  1426. </td>
  1427. <td>
  1428. <div>
  1429. <p>The encoding memory threshold in bytes.
  1430. <code>multipartFormDataEncodingMemoryThreshold</code> by default.</p>
  1431. </div>
  1432. </td>
  1433. </tr>
  1434. <tr>
  1435. <td>
  1436. <code>
  1437. <em>urlRequest</em>
  1438. </code>
  1439. </td>
  1440. <td>
  1441. <div>
  1442. <p>The URL request.</p>
  1443. </div>
  1444. </td>
  1445. </tr>
  1446. <tr>
  1447. <td>
  1448. <code>
  1449. <em>encodingCompletion</em>
  1450. </code>
  1451. </td>
  1452. <td>
  1453. <div>
  1454. <p>The closure called when the <code><a href="Classes/MultipartFormData.html">MultipartFormData</a></code> encoding is complete.</p>
  1455. </div>
  1456. </td>
  1457. </tr>
  1458. </tbody>
  1459. </table>
  1460. </div>
  1461. </section>
  1462. </div>
  1463. </li>
  1464. </ul>
  1465. </div>
  1466. <div class="task-group">
  1467. <div class="task-name-container">
  1468. <a name="/Hostname%20and%20Port"></a>
  1469. <a name="//apple_ref/swift/Section/Hostname and Port" class="dashAnchor"></a>
  1470. <a href="#/Hostname%20and%20Port">
  1471. <h3 class="section-name">Hostname and Port</h3>
  1472. </a>
  1473. </div>
  1474. <ul class="item-container">
  1475. <li class="item">
  1476. <div>
  1477. <code>
  1478. <a name="/s:9Alamofire6streamAA13StreamRequestCSS12withHostName_Si4porttF"></a>
  1479. <a name="//apple_ref/swift/Function/stream(withHostName:port:)" class="dashAnchor"></a>
  1480. <a class="token" href="#/s:9Alamofire6streamAA13StreamRequestCSS12withHostName_Si4porttF">stream(withHostName:port:)</a>
  1481. </code>
  1482. </div>
  1483. <div class="height-container">
  1484. <div class="pointer-container"></div>
  1485. <section class="section">
  1486. <div class="pointer"></div>
  1487. <div class="abstract">
  1488. <p>Creates a <code><a href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> for bidirectional streaming with the <code>hostname</code>
  1489. and <code>port</code>.</p>
  1490. <p>If <code>startRequestsImmediately</code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1491. </div>
  1492. <div class="declaration">
  1493. <h4>Declaration</h4>
  1494. <div class="language">
  1495. <p class="aside-title">Swift</p>
  1496. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">stream</span><span class="p">(</span><span class="n">withHostName</span> <span class="nv">hostName</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">port</span><span class="p">:</span> <span class="kt">Int</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></span></code></pre>
  1497. </div>
  1498. </div>
  1499. <div>
  1500. <h4>Parameters</h4>
  1501. <table class="graybox">
  1502. <tbody>
  1503. <tr>
  1504. <td>
  1505. <code>
  1506. <em>hostName</em>
  1507. </code>
  1508. </td>
  1509. <td>
  1510. <div>
  1511. <p>The hostname of the server to connect to.</p>
  1512. </div>
  1513. </td>
  1514. </tr>
  1515. <tr>
  1516. <td>
  1517. <code>
  1518. <em>port</em>
  1519. </code>
  1520. </td>
  1521. <td>
  1522. <div>
  1523. <p>The port of the server to connect to.</p>
  1524. </div>
  1525. </td>
  1526. </tr>
  1527. </tbody>
  1528. </table>
  1529. </div>
  1530. <div>
  1531. <h4>Return Value</h4>
  1532. <p>The created <code><a href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code>.</p>
  1533. </div>
  1534. </section>
  1535. </div>
  1536. </li>
  1537. </ul>
  1538. </div>
  1539. <div class="task-group">
  1540. <div class="task-name-container">
  1541. <a name="/NetService"></a>
  1542. <a name="//apple_ref/swift/Section/NetService" class="dashAnchor"></a>
  1543. <a href="#/NetService">
  1544. <h3 class="section-name">NetService</h3>
  1545. </a>
  1546. </div>
  1547. <ul class="item-container">
  1548. <li class="item">
  1549. <div>
  1550. <code>
  1551. <a name="/s:9Alamofire6streamAA13StreamRequestCSo10NetServiceC4with_tF"></a>
  1552. <a name="//apple_ref/swift/Function/stream(with:)" class="dashAnchor"></a>
  1553. <a class="token" href="#/s:9Alamofire6streamAA13StreamRequestCSo10NetServiceC4with_tF">stream(with:)</a>
  1554. </code>
  1555. </div>
  1556. <div class="height-container">
  1557. <div class="pointer-container"></div>
  1558. <section class="section">
  1559. <div class="pointer"></div>
  1560. <div class="abstract">
  1561. <p>Creates a <code><a href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code> using the default <code><a href="Classes/SessionManager.html">SessionManager</a></code> for bidirectional streaming with the <code>netService</code>.</p>
  1562. <p>If <code>startRequestsImmediately</code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1563. </div>
  1564. <div class="declaration">
  1565. <h4>Declaration</h4>
  1566. <div class="language">
  1567. <p class="aside-title">Swift</p>
  1568. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">stream</span><span class="p">(</span><span class="n">with</span> <span class="nv">netService</span><span class="p">:</span> <span class="kt">NetService</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt"><a href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></span></code></pre>
  1569. </div>
  1570. </div>
  1571. <div>
  1572. <h4>Parameters</h4>
  1573. <table class="graybox">
  1574. <tbody>
  1575. <tr>
  1576. <td>
  1577. <code>
  1578. <em>netService</em>
  1579. </code>
  1580. </td>
  1581. <td>
  1582. <div>
  1583. <p>The net service used to identify the endpoint.</p>
  1584. </div>
  1585. </td>
  1586. </tr>
  1587. </tbody>
  1588. </table>
  1589. </div>
  1590. <div>
  1591. <h4>Return Value</h4>
  1592. <p>The created <code><a href="Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code>.</p>
  1593. </div>
  1594. </section>
  1595. </div>
  1596. </li>
  1597. </ul>
  1598. </div>
  1599. <div class="task-group">
  1600. <ul class="item-container">
  1601. <li class="item">
  1602. <div>
  1603. <code>
  1604. <a name="/s:9Alamofire2eeoiSbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF"></a>
  1605. <a name="//apple_ref/swift/Function/==(_:_:)" class="dashAnchor"></a>
  1606. <a class="token" href="#/s:9Alamofire2eeoiSbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF">==(_:_:)</a>
  1607. </code>
  1608. </div>
  1609. <div class="height-container">
  1610. <div class="pointer-container"></div>
  1611. <section class="section">
  1612. <div class="pointer"></div>
  1613. <div class="abstract">
  1614. <p>Returns whether the two network reachability status values are equal.</p>
  1615. </div>
  1616. <div class="declaration">
  1617. <h4>Declaration</h4>
  1618. <div class="language">
  1619. <p class="aside-title">Swift</p>
  1620. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="o">==</span><span class="p">(</span>
  1621. <span class="nv">lhs</span><span class="p">:</span> <span class="kt"><a href="Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a></span><span class="o">.</span><span class="kt">NetworkReachabilityStatus</span><span class="p">,</span>
  1622. <span class="nv">rhs</span><span class="p">:</span> <span class="kt"><a href="Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a></span><span class="o">.</span><span class="kt">NetworkReachabilityStatus</span><span class="p">)</span>
  1623. <span class="o">-&gt;</span> <span class="kt">Bool</span></code></pre>
  1624. </div>
  1625. </div>
  1626. <div>
  1627. <h4>Parameters</h4>
  1628. <table class="graybox">
  1629. <tbody>
  1630. <tr>
  1631. <td>
  1632. <code>
  1633. <em>lhs</em>
  1634. </code>
  1635. </td>
  1636. <td>
  1637. <div>
  1638. <p>The left-hand side value to compare.</p>
  1639. </div>
  1640. </td>
  1641. </tr>
  1642. <tr>
  1643. <td>
  1644. <code>
  1645. <em>rhs</em>
  1646. </code>
  1647. </td>
  1648. <td>
  1649. <div>
  1650. <p>The right-hand side value to compare.</p>
  1651. </div>
  1652. </td>
  1653. </tr>
  1654. </tbody>
  1655. </table>
  1656. </div>
  1657. <div>
  1658. <h4>Return Value</h4>
  1659. <p><code>true</code> if the two values are equal, <code>false</code> otherwise.</p>
  1660. </div>
  1661. </section>
  1662. </div>
  1663. </li>
  1664. </ul>
  1665. </div>
  1666. </div>
  1667. </section>
  1668. </article>
  1669. </div>
  1670. <section class="footer">
  1671. <p>&copy; 2018 <a class="link" href="http://alamofire.org/" target="_blank" rel="external">Alamofire Software Foundation</a>. All rights reserved. (Last updated: 2018-04-15)</p>
  1672. <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.1</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
  1673. </section>
  1674. </body>
  1675. </div>
  1676. </html>