SessionManager.html 122 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>SessionManager Class 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 name="//apple_ref/swift/Class/SessionManager" class="dashAnchor"></a>
  16. <a title="SessionManager Class Reference"></a>
  17. <header class="header">
  18. <p class="header-col header-col--primary">
  19. <a class="header-link" href="../index.html">
  20. Alamofire Docs
  21. </a>
  22. (87% documented)
  23. </p>
  24. <p class="header-col--secondary">
  25. <form role="search" action="../search.json">
  26. <input type="text" placeholder="Search documentation" data-typeahead>
  27. </form>
  28. </p>
  29. <p class="header-col header-col--secondary">
  30. <a class="header-link" href="https://github.com/Alamofire/Alamofire">
  31. <img class="header-icon" src="../img/gh.png"/>
  32. View on GitHub
  33. </a>
  34. </p>
  35. <p class="header-col header-col--secondary">
  36. <a class="header-link" href="dash-feed://https%3A%2F%2Falamofire%2Egithub%2Eio%2FAlamofire%2Fdocsets%2FAlamofire%2Exml">
  37. <img class="header-icon" src="../img/dash.png"/>
  38. Install in Dash
  39. </a>
  40. </p>
  41. </header>
  42. <p class="breadcrumbs">
  43. <a class="breadcrumb" href="../index.html">Alamofire Reference</a>
  44. <img class="carat" src="../img/carat.png" />
  45. SessionManager Class Reference
  46. </p>
  47. <div class="content-wrapper">
  48. <nav class="navigation">
  49. <ul class="nav-groups">
  50. <li class="nav-group-name">
  51. <a class="nav-group-name-link" href="../Classes.html">Classes</a>
  52. <ul class="nav-group-tasks">
  53. <li class="nav-group-task">
  54. <a class="nav-group-task-link" href="../Classes/DataRequest.html">DataRequest</a>
  55. </li>
  56. <li class="nav-group-task">
  57. <a class="nav-group-task-link" href="../Classes/DownloadRequest.html">DownloadRequest</a>
  58. </li>
  59. <li class="nav-group-task">
  60. <a class="nav-group-task-link" href="../Classes/DownloadRequest/DownloadOptions.html">– DownloadOptions</a>
  61. </li>
  62. <li class="nav-group-task">
  63. <a class="nav-group-task-link" href="../Classes/MultipartFormData.html">MultipartFormData</a>
  64. </li>
  65. <li class="nav-group-task">
  66. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a>
  67. </li>
  68. <li class="nav-group-task">
  69. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/NetworkReachabilityStatus.html">– NetworkReachabilityStatus</a>
  70. </li>
  71. <li class="nav-group-task">
  72. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/ConnectionType.html">– ConnectionType</a>
  73. </li>
  74. <li class="nav-group-task">
  75. <a class="nav-group-task-link" href="../Classes/Request.html">Request</a>
  76. </li>
  77. <li class="nav-group-task">
  78. <a class="nav-group-task-link" href="../Classes/Request/ValidationResult.html">– ValidationResult</a>
  79. </li>
  80. <li class="nav-group-task">
  81. <a class="nav-group-task-link" href="../Classes/ServerTrustPolicyManager.html">ServerTrustPolicyManager</a>
  82. </li>
  83. <li class="nav-group-task">
  84. <a class="nav-group-task-link" href="../Classes/SessionDelegate.html">SessionDelegate</a>
  85. </li>
  86. <li class="nav-group-task">
  87. <a class="nav-group-task-link" href="../Classes/SessionManager.html">SessionManager</a>
  88. </li>
  89. <li class="nav-group-task">
  90. <a class="nav-group-task-link" href="../Classes/SessionManager/MultipartFormDataEncodingResult.html">– MultipartFormDataEncodingResult</a>
  91. </li>
  92. <li class="nav-group-task">
  93. <a class="nav-group-task-link" href="../Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a>
  94. </li>
  95. <li class="nav-group-task">
  96. <a class="nav-group-task-link" href="../Classes/TaskDelegate.html">TaskDelegate</a>
  97. </li>
  98. <li class="nav-group-task">
  99. <a class="nav-group-task-link" href="../Classes/UploadRequest.html">UploadRequest</a>
  100. </li>
  101. </ul>
  102. </li>
  103. <li class="nav-group-name">
  104. <a class="nav-group-name-link" href="../Enums.html">Enumerations</a>
  105. <ul class="nav-group-tasks">
  106. <li class="nav-group-task">
  107. <a class="nav-group-task-link" href="../Enums/AFError.html">AFError</a>
  108. </li>
  109. <li class="nav-group-task">
  110. <a class="nav-group-task-link" href="../Enums/AFError/ParameterEncodingFailureReason.html">– ParameterEncodingFailureReason</a>
  111. </li>
  112. <li class="nav-group-task">
  113. <a class="nav-group-task-link" href="../Enums/AFError/MultipartEncodingFailureReason.html">– MultipartEncodingFailureReason</a>
  114. </li>
  115. <li class="nav-group-task">
  116. <a class="nav-group-task-link" href="../Enums/AFError/ResponseValidationFailureReason.html">– ResponseValidationFailureReason</a>
  117. </li>
  118. <li class="nav-group-task">
  119. <a class="nav-group-task-link" href="../Enums/AFError/ResponseSerializationFailureReason.html">– ResponseSerializationFailureReason</a>
  120. </li>
  121. <li class="nav-group-task">
  122. <a class="nav-group-task-link" href="../Enums/HTTPMethod.html">HTTPMethod</a>
  123. </li>
  124. <li class="nav-group-task">
  125. <a class="nav-group-task-link" href="../Enums/Result.html">Result</a>
  126. </li>
  127. <li class="nav-group-task">
  128. <a class="nav-group-task-link" href="../Enums/ServerTrustPolicy.html">ServerTrustPolicy</a>
  129. </li>
  130. </ul>
  131. </li>
  132. <li class="nav-group-name">
  133. <a class="nav-group-name-link" href="../Extensions.html">Extensions</a>
  134. <ul class="nav-group-tasks">
  135. <li class="nav-group-task">
  136. <a class="nav-group-task-link" href="../Extensions/Notification.html">Notification</a>
  137. </li>
  138. <li class="nav-group-task">
  139. <a class="nav-group-task-link" href="../Extensions/Notification/Name.html">– Name</a>
  140. </li>
  141. <li class="nav-group-task">
  142. <a class="nav-group-task-link" href="../Extensions/Notification/Key.html">– Key</a>
  143. </li>
  144. <li class="nav-group-task">
  145. <a class="nav-group-task-link" href="../Extensions/String.html">String</a>
  146. </li>
  147. <li class="nav-group-task">
  148. <a class="nav-group-task-link" href="../Extensions/URL.html">URL</a>
  149. </li>
  150. <li class="nav-group-task">
  151. <a class="nav-group-task-link" href="../Extensions/URLComponents.html">URLComponents</a>
  152. </li>
  153. <li class="nav-group-task">
  154. <a class="nav-group-task-link" href="../Extensions/URLRequest.html">URLRequest</a>
  155. </li>
  156. </ul>
  157. </li>
  158. <li class="nav-group-name">
  159. <a class="nav-group-name-link" href="../Functions.html">Functions</a>
  160. <ul class="nav-group-tasks">
  161. <li class="nav-group-task">
  162. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire2eeoiSbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF">==(_:_:)</a>
  163. </li>
  164. <li class="nav-group-task">
  165. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headers10Foundation3URLV011destinationO0_AD0C7OptionsV7optionstAU_So15HTTPURLResponseCtcSg2totF">download(_:method:parameters:encoding:headers:to:)</a>
  166. </li>
  167. <li class="nav-group-task">
  168. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationH0_AD0C7OptionsV7optionstAH_So15HTTPURLResponseCtcSg2totF">download(_:to:)</a>
  169. </li>
  170. <li class="nav-group-task">
  171. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AE3URLV011destinationI0_AD0C7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF">download(resumingWith:to:)</a>
  172. </li>
  173. <li class="nav-group-task">
  174. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire7requestAA11DataRequestCAA21URLRequestConvertible_pF">request(_:)</a>
  175. </li>
  176. <li class="nav-group-task">
  177. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingAJyS2SGSg7headerstF">request(_:method:parameters:encoding:headers:)</a>
  178. </li>
  179. <li class="nav-group-task">
  180. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6streamAA13StreamRequestCSo10NetServiceC4with_tF">stream(with:)</a>
  181. </li>
  182. <li class="nav-group-task">
  183. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6streamAA13StreamRequestCSS12withHostName_Si4porttF">stream(withHostName:port:)</a>
  184. </li>
  185. <li class="nav-group-task">
  186. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  187. </li>
  188. <li class="nav-group-task">
  189. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  190. </li>
  191. <li class="nav-group-task">
  192. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  193. </li>
  194. <li class="nav-group-task">
  195. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  196. </li>
  197. <li class="nav-group-task">
  198. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  199. </li>
  200. <li class="nav-group-task">
  201. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  202. </li>
  203. <li class="nav-group-task">
  204. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)</a>
  205. </li>
  206. <li class="nav-group-task">
  207. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire6uploadyyAA17MultipartFormDataCc09multipartdE0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAA14SessionManagerC0cdE14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:with:encodingCompletion:)</a>
  208. </li>
  209. </ul>
  210. </li>
  211. <li class="nav-group-name">
  212. <a class="nav-group-name-link" href="../Protocols.html">Protocols</a>
  213. <ul class="nav-group-tasks">
  214. <li class="nav-group-task">
  215. <a class="nav-group-task-link" href="../Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a>
  216. </li>
  217. <li class="nav-group-task">
  218. <a class="nav-group-task-link" href="../Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a>
  219. </li>
  220. <li class="nav-group-task">
  221. <a class="nav-group-task-link" href="../Protocols/ParameterEncoding.html">ParameterEncoding</a>
  222. </li>
  223. <li class="nav-group-task">
  224. <a class="nav-group-task-link" href="../Protocols/RequestAdapter.html">RequestAdapter</a>
  225. </li>
  226. <li class="nav-group-task">
  227. <a class="nav-group-task-link" href="../Protocols/RequestRetrier.html">RequestRetrier</a>
  228. </li>
  229. <li class="nav-group-task">
  230. <a class="nav-group-task-link" href="../Protocols/URLConvertible.html">URLConvertible</a>
  231. </li>
  232. <li class="nav-group-task">
  233. <a class="nav-group-task-link" href="../Protocols/URLRequestConvertible.html">URLRequestConvertible</a>
  234. </li>
  235. </ul>
  236. </li>
  237. <li class="nav-group-name">
  238. <a class="nav-group-name-link" href="../Structs.html">Structures</a>
  239. <ul class="nav-group-tasks">
  240. <li class="nav-group-task">
  241. <a class="nav-group-task-link" href="../Structs/DataResponse.html">DataResponse</a>
  242. </li>
  243. <li class="nav-group-task">
  244. <a class="nav-group-task-link" href="../Structs/DataResponseSerializer.html">DataResponseSerializer</a>
  245. </li>
  246. <li class="nav-group-task">
  247. <a class="nav-group-task-link" href="../Structs/DefaultDataResponse.html">DefaultDataResponse</a>
  248. </li>
  249. <li class="nav-group-task">
  250. <a class="nav-group-task-link" href="../Structs/DefaultDownloadResponse.html">DefaultDownloadResponse</a>
  251. </li>
  252. <li class="nav-group-task">
  253. <a class="nav-group-task-link" href="../Structs/DownloadResponse.html">DownloadResponse</a>
  254. </li>
  255. <li class="nav-group-task">
  256. <a class="nav-group-task-link" href="../Structs/DownloadResponseSerializer.html">DownloadResponseSerializer</a>
  257. </li>
  258. <li class="nav-group-task">
  259. <a class="nav-group-task-link" href="../Structs/JSONEncoding.html">JSONEncoding</a>
  260. </li>
  261. <li class="nav-group-task">
  262. <a class="nav-group-task-link" href="../Structs/PropertyListEncoding.html">PropertyListEncoding</a>
  263. </li>
  264. <li class="nav-group-task">
  265. <a class="nav-group-task-link" href="../Structs/Timeline.html">Timeline</a>
  266. </li>
  267. <li class="nav-group-task">
  268. <a class="nav-group-task-link" href="../Structs/URLEncoding.html">URLEncoding</a>
  269. </li>
  270. <li class="nav-group-task">
  271. <a class="nav-group-task-link" href="../Structs/URLEncoding/Destination.html">– Destination</a>
  272. </li>
  273. </ul>
  274. </li>
  275. <li class="nav-group-name">
  276. <a class="nav-group-name-link" href="../Typealiases.html">Type Aliases</a>
  277. <ul class="nav-group-tasks">
  278. <li class="nav-group-task">
  279. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a>
  280. </li>
  281. <li class="nav-group-task">
  282. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a>
  283. </li>
  284. <li class="nav-group-task">
  285. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire22RequestRetryCompletiona">RequestRetryCompletion</a>
  286. </li>
  287. </ul>
  288. </li>
  289. </ul>
  290. </nav>
  291. <article class="main-content">
  292. <section class="section">
  293. <div class="section-content">
  294. <h1>SessionManager</h1>
  295. <div class="declaration">
  296. <div class="language">
  297. <pre class="highlight"><code><span class="n">open</span> <span class="kd">class</span> <span class="kt">SessionManager</span></code></pre>
  298. </div>
  299. </div>
  300. <p>Responsible for creating and managing <code><a href="../Classes/Request.html">Request</a></code> objects, as well as their underlying <code>NSURLSession</code>.</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="/Helper%20Types"></a>
  308. <a name="//apple_ref/swift/Section/Helper Types" class="dashAnchor"></a>
  309. <a href="#/Helper%20Types">
  310. <h3 class="section-name">Helper Types</h3>
  311. </a>
  312. </div>
  313. <ul class="item-container">
  314. <li class="item">
  315. <div>
  316. <code>
  317. <a name="/s:9Alamofire14SessionManagerC31MultipartFormDataEncodingResultO"></a>
  318. <a name="//apple_ref/swift/Enum/MultipartFormDataEncodingResult" class="dashAnchor"></a>
  319. <a class="token" href="#/s:9Alamofire14SessionManagerC31MultipartFormDataEncodingResultO">MultipartFormDataEncodingResult</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>Defines whether the <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code> encoding was successful and contains result of the encoding as
  328. associated values.</p>
  329. <ul>
  330. <li>Success: Represents a successful <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code> encoding and contains the new <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> along with
  331. streaming information.</li>
  332. <li>Failure: Used to represent a failure in the <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code> encoding and also contains the encoding
  333. error.</li>
  334. </ul>
  335. <a href="../Classes/SessionManager/MultipartFormDataEncodingResult.html" class="slightly-smaller">See more</a>
  336. </div>
  337. <div class="declaration">
  338. <h4>Declaration</h4>
  339. <div class="language">
  340. <p class="aside-title">Swift</p>
  341. <pre class="highlight"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">MultipartFormDataEncodingResult</span></code></pre>
  342. </div>
  343. </div>
  344. </section>
  345. </div>
  346. </li>
  347. </ul>
  348. </div>
  349. <div class="task-group">
  350. <div class="task-name-container">
  351. <a name="/Properties"></a>
  352. <a name="//apple_ref/swift/Section/Properties" class="dashAnchor"></a>
  353. <a href="#/Properties">
  354. <h3 class="section-name">Properties</h3>
  355. </a>
  356. </div>
  357. <ul class="item-container">
  358. <li class="item">
  359. <div>
  360. <code>
  361. <a name="/s:9Alamofire14SessionManagerC7defaultACvZ"></a>
  362. <a name="//apple_ref/swift/Variable/default" class="dashAnchor"></a>
  363. <a class="token" href="#/s:9Alamofire14SessionManagerC7defaultACvZ">default</a>
  364. </code>
  365. </div>
  366. <div class="height-container">
  367. <div class="pointer-container"></div>
  368. <section class="section">
  369. <div class="pointer"></div>
  370. <div class="abstract">
  371. <p>A default instance of <code>SessionManager</code>, used by top-level Alamofire request methods, and suitable for use
  372. directly for any ad hoc requests.</p>
  373. </div>
  374. <div class="declaration">
  375. <h4>Declaration</h4>
  376. <div class="language">
  377. <p class="aside-title">Swift</p>
  378. <pre class="highlight"><code><span class="n">open</span> <span class="kd">static</span> <span class="kd">let</span> <span class="err">`</span><span class="k">default</span><span class="err">`</span><span class="p">:</span> <span class="kt">SessionManager</span> <span class="o">=</span></code></pre>
  379. </div>
  380. </div>
  381. </section>
  382. </div>
  383. </li>
  384. <li class="item">
  385. <div>
  386. <code>
  387. <a name="/s:9Alamofire14SessionManagerC18defaultHTTPHeaderss10DictionaryVyS2SGvZ"></a>
  388. <a name="//apple_ref/swift/Variable/defaultHTTPHeaders" class="dashAnchor"></a>
  389. <a class="token" href="#/s:9Alamofire14SessionManagerC18defaultHTTPHeaderss10DictionaryVyS2SGvZ">defaultHTTPHeaders</a>
  390. </code>
  391. </div>
  392. <div class="height-container">
  393. <div class="pointer-container"></div>
  394. <section class="section">
  395. <div class="pointer"></div>
  396. <div class="abstract">
  397. <p>Creates default values for the <q>Accept-Encoding</q>, <q>Accept-Language</q> and <q>User-Agent</q> headers.</p>
  398. </div>
  399. <div class="declaration">
  400. <h4>Declaration</h4>
  401. <div class="language">
  402. <p class="aside-title">Swift</p>
  403. <pre class="highlight"><code><span class="n">open</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">defaultHTTPHeaders</span><span class="p">:</span> <span class="kt"><a href="../Typealiases.html#/s:9Alamofire11HTTPHeadersa">HTTPHeaders</a></span> <span class="o">=</span></code></pre>
  404. </div>
  405. </div>
  406. </section>
  407. </div>
  408. </li>
  409. <li class="item">
  410. <div>
  411. <code>
  412. <a name="/s:9Alamofire14SessionManagerC40multipartFormDataEncodingMemoryThresholds6UInt64VvZ"></a>
  413. <a name="//apple_ref/swift/Variable/multipartFormDataEncodingMemoryThreshold" class="dashAnchor"></a>
  414. <a class="token" href="#/s:9Alamofire14SessionManagerC40multipartFormDataEncodingMemoryThresholds6UInt64VvZ">multipartFormDataEncodingMemoryThreshold</a>
  415. </code>
  416. </div>
  417. <div class="height-container">
  418. <div class="pointer-container"></div>
  419. <section class="section">
  420. <div class="pointer"></div>
  421. <div class="abstract">
  422. <p>Default memory threshold used when encoding <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code> in bytes.</p>
  423. </div>
  424. <div class="declaration">
  425. <h4>Declaration</h4>
  426. <div class="language">
  427. <p class="aside-title">Swift</p>
  428. <pre class="highlight"><code><span class="n">open</span> <span class="kd">static</span> <span class="k">let</span> <span class="nv">multipartFormDataEncodingMemoryThreshold</span><span class="p">:</span> <span class="kt">UInt64</span> <span class="o">=</span> <span class="mi">10_000_000</span></code></pre>
  429. </div>
  430. </div>
  431. </section>
  432. </div>
  433. </li>
  434. <li class="item">
  435. <div>
  436. <code>
  437. <a name="/s:9Alamofire14SessionManagerC7sessionSo10URLSessionCv"></a>
  438. <a name="//apple_ref/swift/Property/session" class="dashAnchor"></a>
  439. <a class="token" href="#/s:9Alamofire14SessionManagerC7sessionSo10URLSessionCv">session</a>
  440. </code>
  441. </div>
  442. <div class="height-container">
  443. <div class="pointer-container"></div>
  444. <section class="section">
  445. <div class="pointer"></div>
  446. <div class="abstract">
  447. <p>The underlying session.</p>
  448. </div>
  449. <div class="declaration">
  450. <h4>Declaration</h4>
  451. <div class="language">
  452. <p class="aside-title">Swift</p>
  453. <pre class="highlight"><code><span class="n">open</span> <span class="k">let</span> <span class="nv">session</span><span class="p">:</span> <span class="kt">URLSession</span></code></pre>
  454. </div>
  455. </div>
  456. </section>
  457. </div>
  458. </li>
  459. <li class="item">
  460. <div>
  461. <code>
  462. <a name="/s:9Alamofire14SessionManagerC8delegateAA0B8DelegateCv"></a>
  463. <a name="//apple_ref/swift/Property/delegate" class="dashAnchor"></a>
  464. <a class="token" href="#/s:9Alamofire14SessionManagerC8delegateAA0B8DelegateCv">delegate</a>
  465. </code>
  466. </div>
  467. <div class="height-container">
  468. <div class="pointer-container"></div>
  469. <section class="section">
  470. <div class="pointer"></div>
  471. <div class="abstract">
  472. <p>The session delegate handling all the task and session delegate callbacks.</p>
  473. </div>
  474. <div class="declaration">
  475. <h4>Declaration</h4>
  476. <div class="language">
  477. <p class="aside-title">Swift</p>
  478. <pre class="highlight"><code><span class="n">open</span> <span class="k">let</span> <span class="nv">delegate</span><span class="p">:</span> <span class="kt"><a href="../Classes/SessionDelegate.html">SessionDelegate</a></span></code></pre>
  479. </div>
  480. </div>
  481. </section>
  482. </div>
  483. </li>
  484. <li class="item">
  485. <div>
  486. <code>
  487. <a name="/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv"></a>
  488. <a name="//apple_ref/swift/Property/startRequestsImmediately" class="dashAnchor"></a>
  489. <a class="token" href="#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a>
  490. </code>
  491. </div>
  492. <div class="height-container">
  493. <div class="pointer-container"></div>
  494. <section class="section">
  495. <div class="pointer"></div>
  496. <div class="abstract">
  497. <p>Whether to start requests immediately after being constructed. <code>true</code> by default.</p>
  498. </div>
  499. <div class="declaration">
  500. <h4>Declaration</h4>
  501. <div class="language">
  502. <p class="aside-title">Swift</p>
  503. <pre class="highlight"><code><span class="n">open</span> <span class="k">var</span> <span class="nv">startRequestsImmediately</span><span class="p">:</span> <span class="kt">Bool</span> <span class="o">=</span> <span class="kc">true</span></code></pre>
  504. </div>
  505. </div>
  506. </section>
  507. </div>
  508. </li>
  509. <li class="item">
  510. <div>
  511. <code>
  512. <a name="/s:9Alamofire14SessionManagerC7adapterAA14RequestAdapter_pSgv"></a>
  513. <a name="//apple_ref/swift/Property/adapter" class="dashAnchor"></a>
  514. <a class="token" href="#/s:9Alamofire14SessionManagerC7adapterAA14RequestAdapter_pSgv">adapter</a>
  515. </code>
  516. </div>
  517. <div class="height-container">
  518. <div class="pointer-container"></div>
  519. <section class="section">
  520. <div class="pointer"></div>
  521. <div class="abstract">
  522. <p>The request adapter called each time a new request is created.</p>
  523. </div>
  524. <div class="declaration">
  525. <h4>Declaration</h4>
  526. <div class="language">
  527. <p class="aside-title">Swift</p>
  528. <pre class="highlight"><code><span class="n">open</span> <span class="k">var</span> <span class="nv">adapter</span><span class="p">:</span> <span class="kt"><a href="../Protocols/RequestAdapter.html">RequestAdapter</a></span><span class="p">?</span></code></pre>
  529. </div>
  530. </div>
  531. </section>
  532. </div>
  533. </li>
  534. <li class="item">
  535. <div>
  536. <code>
  537. <a name="/s:9Alamofire14SessionManagerC7retrierAA14RequestRetrier_pSgv"></a>
  538. <a name="//apple_ref/swift/Property/retrier" class="dashAnchor"></a>
  539. <a class="token" href="#/s:9Alamofire14SessionManagerC7retrierAA14RequestRetrier_pSgv">retrier</a>
  540. </code>
  541. </div>
  542. <div class="height-container">
  543. <div class="pointer-container"></div>
  544. <section class="section">
  545. <div class="pointer"></div>
  546. <div class="abstract">
  547. <p>The request retrier called each time a request encounters an error to determine whether to retry the request.</p>
  548. </div>
  549. <div class="declaration">
  550. <h4>Declaration</h4>
  551. <div class="language">
  552. <p class="aside-title">Swift</p>
  553. <pre class="highlight"><code><span class="n">open</span> <span class="k">var</span> <span class="nv">retrier</span><span class="p">:</span> <span class="kt"><a href="../Protocols/RequestRetrier.html">RequestRetrier</a></span><span class="p">?</span></code></pre>
  554. </div>
  555. </div>
  556. </section>
  557. </div>
  558. </li>
  559. <li class="item">
  560. <div>
  561. <code>
  562. <a name="/s:9Alamofire14SessionManagerC27backgroundCompletionHandleryycSgv"></a>
  563. <a name="//apple_ref/swift/Property/backgroundCompletionHandler" class="dashAnchor"></a>
  564. <a class="token" href="#/s:9Alamofire14SessionManagerC27backgroundCompletionHandleryycSgv">backgroundCompletionHandler</a>
  565. </code>
  566. </div>
  567. <div class="height-container">
  568. <div class="pointer-container"></div>
  569. <section class="section">
  570. <div class="pointer"></div>
  571. <div class="abstract">
  572. <p>The background completion handler closure provided by the UIApplicationDelegate
  573. <code>application:handleEventsForBackgroundURLSession:completionHandler:</code> method. By setting the background
  574. completion handler, the SessionDelegate <code>sessionDidFinishEventsForBackgroundURLSession</code> closure implementation
  575. will automatically call the handler.</p>
  576. <p>If you need to handle your own events before the handler is called, then you need to override the
  577. SessionDelegate <code>sessionDidFinishEventsForBackgroundURLSession</code> and manually call the handler when finished.</p>
  578. <p><code>nil</code> by default.</p>
  579. </div>
  580. <div class="declaration">
  581. <h4>Declaration</h4>
  582. <div class="language">
  583. <p class="aside-title">Swift</p>
  584. <pre class="highlight"><code><span class="n">open</span> <span class="k">var</span> <span class="nv">backgroundCompletionHandler</span><span class="p">:</span> <span class="p">(()</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?</span></code></pre>
  585. </div>
  586. </div>
  587. </section>
  588. </div>
  589. </li>
  590. </ul>
  591. </div>
  592. <div class="task-group">
  593. <div class="task-name-container">
  594. <a name="/Lifecycle"></a>
  595. <a name="//apple_ref/swift/Section/Lifecycle" class="dashAnchor"></a>
  596. <a href="#/Lifecycle">
  597. <h3 class="section-name">Lifecycle</h3>
  598. </a>
  599. </div>
  600. <ul class="item-container">
  601. <li class="item">
  602. <div>
  603. <code>
  604. <a name="/s:9Alamofire14SessionManagerCACSo23URLSessionConfigurationC13configuration_AA0B8DelegateC8delegateAA017ServerTrustPolicyC0CSg06serverjkC0tcfc"></a>
  605. <a name="//apple_ref/swift/Method/init(configuration:delegate:serverTrustPolicyManager:)" class="dashAnchor"></a>
  606. <a class="token" href="#/s:9Alamofire14SessionManagerCACSo23URLSessionConfigurationC13configuration_AA0B8DelegateC8delegateAA017ServerTrustPolicyC0CSg06serverjkC0tcfc">init(configuration:delegate:serverTrustPolicyManager:)</a>
  607. </code>
  608. </div>
  609. <div class="height-container">
  610. <div class="pointer-container"></div>
  611. <section class="section">
  612. <div class="pointer"></div>
  613. <div class="abstract">
  614. <p>Creates an instance with the specified <code>configuration</code>, <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC8delegateAA0B8DelegateCv">delegate</a></code> and <code>serverTrustPolicyManager</code>.</p>
  615. </div>
  616. <div class="declaration">
  617. <h4>Declaration</h4>
  618. <div class="language">
  619. <p class="aside-title">Swift</p>
  620. <pre class="highlight"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span>
  621. <span class="nv">configuration</span><span class="p">:</span> <span class="kt">URLSessionConfiguration</span> <span class="o">=</span> <span class="kt">URLSessionConfiguration</span><span class="o">.</span><span class="k">default</span><span class="p">,</span>
  622. <span class="nv">delegate</span><span class="p">:</span> <span class="kt"><a href="../Classes/SessionDelegate.html">SessionDelegate</a></span> <span class="o">=</span> <span class="kt"><a href="../Classes/SessionDelegate.html">SessionDelegate</a></span><span class="p">(),</span>
  623. <span class="nv">serverTrustPolicyManager</span><span class="p">:</span> <span class="kt"><a href="../Classes/ServerTrustPolicyManager.html">ServerTrustPolicyManager</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span></code></pre>
  624. </div>
  625. </div>
  626. <div>
  627. <h4>Parameters</h4>
  628. <table class="graybox">
  629. <tbody>
  630. <tr>
  631. <td>
  632. <code>
  633. <em>configuration</em>
  634. </code>
  635. </td>
  636. <td>
  637. <div>
  638. <p>The configuration used to construct the managed session.
  639. <code>URLSessionConfiguration.default</code> by default.</p>
  640. </div>
  641. </td>
  642. </tr>
  643. <tr>
  644. <td>
  645. <code>
  646. <em>delegate</em>
  647. </code>
  648. </td>
  649. <td>
  650. <div>
  651. <p>The delegate used when initializing the session. <code>SessionDelegate()</code> by
  652. default.</p>
  653. </div>
  654. </td>
  655. </tr>
  656. <tr>
  657. <td>
  658. <code>
  659. <em>serverTrustPolicyManager</em>
  660. </code>
  661. </td>
  662. <td>
  663. <div>
  664. <p>The server trust policy manager to use for evaluating all server trust
  665. challenges. <code>nil</code> by default.</p>
  666. </div>
  667. </td>
  668. </tr>
  669. </tbody>
  670. </table>
  671. </div>
  672. <div>
  673. <h4>Return Value</h4>
  674. <p>The new <code>SessionManager</code> instance.</p>
  675. </div>
  676. </section>
  677. </div>
  678. </li>
  679. <li class="item">
  680. <div>
  681. <code>
  682. <a name="/s:9Alamofire14SessionManagerCACSgSo10URLSessionC7session_AA0B8DelegateC8delegateAA017ServerTrustPolicyC0CSg06serverijC0tcfc"></a>
  683. <a name="//apple_ref/swift/Method/init(session:delegate:serverTrustPolicyManager:)" class="dashAnchor"></a>
  684. <a class="token" href="#/s:9Alamofire14SessionManagerCACSgSo10URLSessionC7session_AA0B8DelegateC8delegateAA017ServerTrustPolicyC0CSg06serverijC0tcfc">init(session:delegate:serverTrustPolicyManager:)</a>
  685. </code>
  686. </div>
  687. <div class="height-container">
  688. <div class="pointer-container"></div>
  689. <section class="section">
  690. <div class="pointer"></div>
  691. <div class="abstract">
  692. <p>Creates an instance with the specified <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC7sessionSo10URLSessionCv">session</a></code>, <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC8delegateAA0B8DelegateCv">delegate</a></code> and <code>serverTrustPolicyManager</code>.</p>
  693. </div>
  694. <div class="declaration">
  695. <h4>Declaration</h4>
  696. <div class="language">
  697. <p class="aside-title">Swift</p>
  698. <pre class="highlight"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">?(</span>
  699. <span class="nv">session</span><span class="p">:</span> <span class="kt">URLSession</span><span class="p">,</span>
  700. <span class="nv">delegate</span><span class="p">:</span> <span class="kt"><a href="../Classes/SessionDelegate.html">SessionDelegate</a></span><span class="p">,</span>
  701. <span class="nv">serverTrustPolicyManager</span><span class="p">:</span> <span class="kt"><a href="../Classes/ServerTrustPolicyManager.html">ServerTrustPolicyManager</a></span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">)</span></code></pre>
  702. </div>
  703. </div>
  704. <div>
  705. <h4>Parameters</h4>
  706. <table class="graybox">
  707. <tbody>
  708. <tr>
  709. <td>
  710. <code>
  711. <em>session</em>
  712. </code>
  713. </td>
  714. <td>
  715. <div>
  716. <p>The URL session.</p>
  717. </div>
  718. </td>
  719. </tr>
  720. <tr>
  721. <td>
  722. <code>
  723. <em>delegate</em>
  724. </code>
  725. </td>
  726. <td>
  727. <div>
  728. <p>The delegate of the URL session. Must equal the URL session&rsquo;s delegate.</p>
  729. </div>
  730. </td>
  731. </tr>
  732. <tr>
  733. <td>
  734. <code>
  735. <em>serverTrustPolicyManager</em>
  736. </code>
  737. </td>
  738. <td>
  739. <div>
  740. <p>The server trust policy manager to use for evaluating all server trust
  741. challenges. <code>nil</code> by default.</p>
  742. </div>
  743. </td>
  744. </tr>
  745. </tbody>
  746. </table>
  747. </div>
  748. <div>
  749. <h4>Return Value</h4>
  750. <p>The new <code>SessionManager</code> instance if the URL session&rsquo;s delegate matches; <code>nil</code> otherwise.</p>
  751. </div>
  752. </section>
  753. </div>
  754. </li>
  755. </ul>
  756. </div>
  757. <div class="task-group">
  758. <div class="task-name-container">
  759. <a name="/Data%20Request"></a>
  760. <a name="//apple_ref/swift/Section/Data Request" class="dashAnchor"></a>
  761. <a href="#/Data%20Request">
  762. <h3 class="section-name">Data Request</h3>
  763. </a>
  764. </div>
  765. <ul class="item-container">
  766. <li class="item">
  767. <div>
  768. <code>
  769. <a name="/s:9Alamofire14SessionManagerC7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingALyS2SGSg7headerstF"></a>
  770. <a name="//apple_ref/swift/Method/request(_:method:parameters:encoding:headers:)" class="dashAnchor"></a>
  771. <a class="token" href="#/s:9Alamofire14SessionManagerC7requestAA11DataRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingALyS2SGSg7headerstF">request(_:method:parameters:encoding:headers:)</a>
  772. </code>
  773. </div>
  774. <div class="height-container">
  775. <div class="pointer-container"></div>
  776. <section class="section">
  777. <div class="pointer"></div>
  778. <div class="abstract">
  779. <p>Creates a <code><a href="../Classes/DataRequest.html">DataRequest</a></code> to retrieve the contents of the specified <code>url</code>, <code>method</code>, <code>parameters</code>, <code>encoding</code>
  780. and <code>headers</code>.</p>
  781. </div>
  782. <div class="declaration">
  783. <h4>Declaration</h4>
  784. <div class="language">
  785. <p class="aside-title">Swift</p>
  786. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">request</span><span class="p">(</span>
  787. <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>
  788. <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>
  789. <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>
  790. <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>
  791. <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>
  792. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/DataRequest.html">DataRequest</a></span></code></pre>
  793. </div>
  794. </div>
  795. <div>
  796. <h4>Parameters</h4>
  797. <table class="graybox">
  798. <tbody>
  799. <tr>
  800. <td>
  801. <code>
  802. <em>url</em>
  803. </code>
  804. </td>
  805. <td>
  806. <div>
  807. <p>The URL.</p>
  808. </div>
  809. </td>
  810. </tr>
  811. <tr>
  812. <td>
  813. <code>
  814. <em>method</em>
  815. </code>
  816. </td>
  817. <td>
  818. <div>
  819. <p>The HTTP method. <code>.get</code> by default.</p>
  820. </div>
  821. </td>
  822. </tr>
  823. <tr>
  824. <td>
  825. <code>
  826. <em>parameters</em>
  827. </code>
  828. </td>
  829. <td>
  830. <div>
  831. <p>The parameters. <code>nil</code> by default.</p>
  832. </div>
  833. </td>
  834. </tr>
  835. <tr>
  836. <td>
  837. <code>
  838. <em>encoding</em>
  839. </code>
  840. </td>
  841. <td>
  842. <div>
  843. <p>The parameter encoding. <code><a href="../Structs/URLEncoding.html#/s:9Alamofire11URLEncodingV7defaultACvZ">URLEncoding.default</a></code> by default.</p>
  844. </div>
  845. </td>
  846. </tr>
  847. <tr>
  848. <td>
  849. <code>
  850. <em>headers</em>
  851. </code>
  852. </td>
  853. <td>
  854. <div>
  855. <p>The HTTP headers. <code>nil</code> by default.</p>
  856. </div>
  857. </td>
  858. </tr>
  859. </tbody>
  860. </table>
  861. </div>
  862. <div>
  863. <h4>Return Value</h4>
  864. <p>The created <code><a href="../Classes/DataRequest.html">DataRequest</a></code>.</p>
  865. </div>
  866. </section>
  867. </div>
  868. </li>
  869. <li class="item">
  870. <div>
  871. <code>
  872. <a name="/s:9Alamofire14SessionManagerC7requestAA11DataRequestCAA21URLRequestConvertible_pF"></a>
  873. <a name="//apple_ref/swift/Method/request(_:)" class="dashAnchor"></a>
  874. <a class="token" href="#/s:9Alamofire14SessionManagerC7requestAA11DataRequestCAA21URLRequestConvertible_pF">request(_:)</a>
  875. </code>
  876. </div>
  877. <div class="height-container">
  878. <div class="pointer-container"></div>
  879. <section class="section">
  880. <div class="pointer"></div>
  881. <div class="abstract">
  882. <p>Creates a <code><a href="../Classes/DataRequest.html">DataRequest</a></code> to retrieve the contents of a URL based on the specified <code>urlRequest</code>.</p>
  883. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  884. </div>
  885. <div class="declaration">
  886. <h4>Declaration</h4>
  887. <div class="language">
  888. <p class="aside-title">Swift</p>
  889. <pre class="highlight"><code><span class="n">open</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>
  890. </div>
  891. </div>
  892. <div>
  893. <h4>Parameters</h4>
  894. <table class="graybox">
  895. <tbody>
  896. <tr>
  897. <td>
  898. <code>
  899. <em>urlRequest</em>
  900. </code>
  901. </td>
  902. <td>
  903. <div>
  904. <p>The URL request.</p>
  905. </div>
  906. </td>
  907. </tr>
  908. </tbody>
  909. </table>
  910. </div>
  911. <div>
  912. <h4>Return Value</h4>
  913. <p>The created <code><a href="../Classes/DataRequest.html">DataRequest</a></code>.</p>
  914. </div>
  915. </section>
  916. </div>
  917. </li>
  918. </ul>
  919. </div>
  920. <div class="task-group">
  921. <div class="task-name-container">
  922. <a name="/URL%20Request"></a>
  923. <a name="//apple_ref/swift/Section/URL Request" class="dashAnchor"></a>
  924. <a href="#/URL%20Request">
  925. <h3 class="section-name">URL Request</h3>
  926. </a>
  927. </div>
  928. <ul class="item-container">
  929. <li class="item">
  930. <div>
  931. <code>
  932. <a name="/s:9Alamofire14SessionManagerC8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingALyS2SGSg7headers10Foundation3URLV011destinationQ0_AF0E7OptionsV7optionstAW_So15HTTPURLResponseCtcSg2totF"></a>
  933. <a name="//apple_ref/swift/Method/download(_:method:parameters:encoding:headers:to:)" class="dashAnchor"></a>
  934. <a class="token" href="#/s:9Alamofire14SessionManagerC8downloadAA15DownloadRequestCAA14URLConvertible_p_AA10HTTPMethodO6methods10DictionaryVySSypGSg10parametersAA17ParameterEncoding_p8encodingALyS2SGSg7headers10Foundation3URLV011destinationQ0_AF0E7OptionsV7optionstAW_So15HTTPURLResponseCtcSg2totF">download(_:method:parameters:encoding:headers:to:)</a>
  935. </code>
  936. </div>
  937. <div class="height-container">
  938. <div class="pointer-container"></div>
  939. <section class="section">
  940. <div class="pointer"></div>
  941. <div class="abstract">
  942. <p>Creates a <code><a href="../Classes/DownloadRequest.html">DownloadRequest</a></code> to retrieve the contents the specified <code>url</code>, <code>method</code>, <code>parameters</code>, <code>encoding</code>,
  943. <code>headers</code> and save them to the <code>destination</code>.</p>
  944. <p>If <code>destination</code> is not specified, the contents will remain in the temporary location determined by the
  945. underlying URL session.</p>
  946. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  947. </div>
  948. <div class="declaration">
  949. <h4>Declaration</h4>
  950. <div class="language">
  951. <p class="aside-title">Swift</p>
  952. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">download</span><span class="p">(</span>
  953. <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>
  954. <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>
  955. <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>
  956. <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>
  957. <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>
  958. <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>
  959. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/DownloadRequest.html">DownloadRequest</a></span></code></pre>
  960. </div>
  961. </div>
  962. <div>
  963. <h4>Parameters</h4>
  964. <table class="graybox">
  965. <tbody>
  966. <tr>
  967. <td>
  968. <code>
  969. <em>url</em>
  970. </code>
  971. </td>
  972. <td>
  973. <div>
  974. <p>The URL.</p>
  975. </div>
  976. </td>
  977. </tr>
  978. <tr>
  979. <td>
  980. <code>
  981. <em>method</em>
  982. </code>
  983. </td>
  984. <td>
  985. <div>
  986. <p>The HTTP method. <code>.get</code> by default.</p>
  987. </div>
  988. </td>
  989. </tr>
  990. <tr>
  991. <td>
  992. <code>
  993. <em>parameters</em>
  994. </code>
  995. </td>
  996. <td>
  997. <div>
  998. <p>The parameters. <code>nil</code> by default.</p>
  999. </div>
  1000. </td>
  1001. </tr>
  1002. <tr>
  1003. <td>
  1004. <code>
  1005. <em>encoding</em>
  1006. </code>
  1007. </td>
  1008. <td>
  1009. <div>
  1010. <p>The parameter encoding. <code><a href="../Structs/URLEncoding.html#/s:9Alamofire11URLEncodingV7defaultACvZ">URLEncoding.default</a></code> by default.</p>
  1011. </div>
  1012. </td>
  1013. </tr>
  1014. <tr>
  1015. <td>
  1016. <code>
  1017. <em>headers</em>
  1018. </code>
  1019. </td>
  1020. <td>
  1021. <div>
  1022. <p>The HTTP headers. <code>nil</code> by default.</p>
  1023. </div>
  1024. </td>
  1025. </tr>
  1026. <tr>
  1027. <td>
  1028. <code>
  1029. <em>destination</em>
  1030. </code>
  1031. </td>
  1032. <td>
  1033. <div>
  1034. <p>The closure used to determine the destination of the downloaded file. <code>nil</code> by default.</p>
  1035. </div>
  1036. </td>
  1037. </tr>
  1038. </tbody>
  1039. </table>
  1040. </div>
  1041. <div>
  1042. <h4>Return Value</h4>
  1043. <p>The created <code><a href="../Classes/DownloadRequest.html">DownloadRequest</a></code>.</p>
  1044. </div>
  1045. </section>
  1046. </div>
  1047. </li>
  1048. <li class="item">
  1049. <div>
  1050. <code>
  1051. <a name="/s:9Alamofire14SessionManagerC8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationJ0_AF0E7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF"></a>
  1052. <a name="//apple_ref/swift/Method/download(_:to:)" class="dashAnchor"></a>
  1053. <a class="token" href="#/s:9Alamofire14SessionManagerC8downloadAA15DownloadRequestCAA21URLRequestConvertible_p_10Foundation3URLV011destinationJ0_AF0E7OptionsV7optionstAJ_So15HTTPURLResponseCtcSg2totF">download(_:to:)</a>
  1054. </code>
  1055. </div>
  1056. <div class="height-container">
  1057. <div class="pointer-container"></div>
  1058. <section class="section">
  1059. <div class="pointer"></div>
  1060. <div class="abstract">
  1061. <p>Creates a <code><a href="../Classes/DownloadRequest.html">DownloadRequest</a></code> to retrieve the contents of a URL based on the specified <code>urlRequest</code> and save
  1062. them to the <code>destination</code>.</p>
  1063. <p>If <code>destination</code> is not specified, the contents will remain in the temporary location determined by the
  1064. underlying URL session.</p>
  1065. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1066. </div>
  1067. <div class="declaration">
  1068. <h4>Declaration</h4>
  1069. <div class="language">
  1070. <p class="aside-title">Swift</p>
  1071. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">download</span><span class="p">(</span>
  1072. <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>
  1073. <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>
  1074. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/DownloadRequest.html">DownloadRequest</a></span></code></pre>
  1075. </div>
  1076. </div>
  1077. <div>
  1078. <h4>Parameters</h4>
  1079. <table class="graybox">
  1080. <tbody>
  1081. <tr>
  1082. <td>
  1083. <code>
  1084. <em>urlRequest</em>
  1085. </code>
  1086. </td>
  1087. <td>
  1088. <div>
  1089. <p>The URL request</p>
  1090. </div>
  1091. </td>
  1092. </tr>
  1093. <tr>
  1094. <td>
  1095. <code>
  1096. <em>destination</em>
  1097. </code>
  1098. </td>
  1099. <td>
  1100. <div>
  1101. <p>The closure used to determine the destination of the downloaded file. <code>nil</code> by default.</p>
  1102. </div>
  1103. </td>
  1104. </tr>
  1105. </tbody>
  1106. </table>
  1107. </div>
  1108. <div>
  1109. <h4>Return Value</h4>
  1110. <p>The created <code><a href="../Classes/DownloadRequest.html">DownloadRequest</a></code>.</p>
  1111. </div>
  1112. </section>
  1113. </div>
  1114. </li>
  1115. </ul>
  1116. </div>
  1117. <div class="task-group">
  1118. <div class="task-name-container">
  1119. <a name="/Resume%20Data"></a>
  1120. <a name="//apple_ref/swift/Section/Resume Data" class="dashAnchor"></a>
  1121. <a href="#/Resume%20Data">
  1122. <h3 class="section-name">Resume Data</h3>
  1123. </a>
  1124. </div>
  1125. <ul class="item-container">
  1126. <li class="item">
  1127. <div>
  1128. <code>
  1129. <a name="/s:9Alamofire14SessionManagerC8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AG3URLV011destinationK0_AF0E7OptionsV7optionstAL_So15HTTPURLResponseCtcSg2totF"></a>
  1130. <a name="//apple_ref/swift/Method/download(resumingWith:to:)" class="dashAnchor"></a>
  1131. <a class="token" href="#/s:9Alamofire14SessionManagerC8downloadAA15DownloadRequestC10Foundation4DataV12resumingWith_AG3URLV011destinationK0_AF0E7OptionsV7optionstAL_So15HTTPURLResponseCtcSg2totF">download(resumingWith:to:)</a>
  1132. </code>
  1133. </div>
  1134. <div class="height-container">
  1135. <div class="pointer-container"></div>
  1136. <section class="section">
  1137. <div class="pointer"></div>
  1138. <div class="abstract">
  1139. <p>Creates a <code><a href="../Classes/DownloadRequest.html">DownloadRequest</a></code> from the <code>resumeData</code> produced from a previous request cancellation to retrieve
  1140. the contents of the original request and save them to the <code>destination</code>.</p>
  1141. <p>If <code>destination</code> is not specified, the contents will remain in the temporary location determined by the
  1142. underlying URL session.</p>
  1143. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1144. <p>On the latest release of all the Apple platforms (iOS 10, macOS 10.12, tvOS 10, watchOS 3), <code>resumeData</code> is broken
  1145. on background URL session configurations. There&rsquo;s an underlying bug in the <code>resumeData</code> generation logic where the
  1146. data is written incorrectly and will always fail to resume the download. For more information about the bug and
  1147. possible workarounds, please refer to the following Stack Overflow post:</p>
  1148. <ul>
  1149. <li><p><a href="http://stackoverflow.com/a/39347461/1342462">http://stackoverflow.com/a/39347461/1342462</a></p></li>
  1150. </ul>
  1151. </div>
  1152. <div class="declaration">
  1153. <h4>Declaration</h4>
  1154. <div class="language">
  1155. <p class="aside-title">Swift</p>
  1156. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">download</span><span class="p">(</span>
  1157. <span class="n">resumingWith</span> <span class="nv">resumeData</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span>
  1158. <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>
  1159. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/DownloadRequest.html">DownloadRequest</a></span></code></pre>
  1160. </div>
  1161. </div>
  1162. <div>
  1163. <h4>Parameters</h4>
  1164. <table class="graybox">
  1165. <tbody>
  1166. <tr>
  1167. <td>
  1168. <code>
  1169. <em>resumeData</em>
  1170. </code>
  1171. </td>
  1172. <td>
  1173. <div>
  1174. <p>The resume data. This is an opaque data blob produced by <code>URLSessionDownloadTask</code>
  1175. when a task is cancelled. See <code>URLSession -downloadTask(withResumeData:)</code> for
  1176. additional information.</p>
  1177. </div>
  1178. </td>
  1179. </tr>
  1180. <tr>
  1181. <td>
  1182. <code>
  1183. <em>destination</em>
  1184. </code>
  1185. </td>
  1186. <td>
  1187. <div>
  1188. <p>The closure used to determine the destination of the downloaded file. <code>nil</code> by default.</p>
  1189. </div>
  1190. </td>
  1191. </tr>
  1192. </tbody>
  1193. </table>
  1194. </div>
  1195. <div>
  1196. <h4>Return Value</h4>
  1197. <p>The created <code><a href="../Classes/DownloadRequest.html">DownloadRequest</a></code>.</p>
  1198. </div>
  1199. </section>
  1200. </div>
  1201. </li>
  1202. </ul>
  1203. </div>
  1204. <div class="task-group">
  1205. <div class="task-name-container">
  1206. <a name="/File"></a>
  1207. <a name="//apple_ref/swift/Section/File" class="dashAnchor"></a>
  1208. <a href="#/File">
  1209. <h3 class="section-name">File</h3>
  1210. </a>
  1211. </div>
  1212. <ul class="item-container">
  1213. <li class="item">
  1214. <div>
  1215. <code>
  1216. <a name="/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF"></a>
  1217. <a name="//apple_ref/swift/Method/upload(_:to:method:headers:)" class="dashAnchor"></a>
  1218. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation3URLV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  1219. </code>
  1220. </div>
  1221. <div class="height-container">
  1222. <div class="pointer-container"></div>
  1223. <section class="section">
  1224. <div class="pointer"></div>
  1225. <div class="abstract">
  1226. <p>Creates an <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> from the specified <code>url</code>, <code>method</code> and <code>headers</code> for uploading the <code>file</code>.</p>
  1227. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1228. </div>
  1229. <div class="declaration">
  1230. <h4>Declaration</h4>
  1231. <div class="language">
  1232. <p class="aside-title">Swift</p>
  1233. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1234. <span class="n">_</span> <span class="nv">fileURL</span><span class="p">:</span> <span class="kt">URL</span><span class="p">,</span>
  1235. <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>
  1236. <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>
  1237. <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>
  1238. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  1239. </div>
  1240. </div>
  1241. <div>
  1242. <h4>Parameters</h4>
  1243. <table class="graybox">
  1244. <tbody>
  1245. <tr>
  1246. <td>
  1247. <code>
  1248. <em>file</em>
  1249. </code>
  1250. </td>
  1251. <td>
  1252. <div>
  1253. <p>The file to upload.</p>
  1254. </div>
  1255. </td>
  1256. </tr>
  1257. <tr>
  1258. <td>
  1259. <code>
  1260. <em>url</em>
  1261. </code>
  1262. </td>
  1263. <td>
  1264. <div>
  1265. <p>The URL.</p>
  1266. </div>
  1267. </td>
  1268. </tr>
  1269. <tr>
  1270. <td>
  1271. <code>
  1272. <em>method</em>
  1273. </code>
  1274. </td>
  1275. <td>
  1276. <div>
  1277. <p>The HTTP method. <code>.post</code> by default.</p>
  1278. </div>
  1279. </td>
  1280. </tr>
  1281. <tr>
  1282. <td>
  1283. <code>
  1284. <em>headers</em>
  1285. </code>
  1286. </td>
  1287. <td>
  1288. <div>
  1289. <p>The HTTP headers. <code>nil</code> by default.</p>
  1290. </div>
  1291. </td>
  1292. </tr>
  1293. </tbody>
  1294. </table>
  1295. </div>
  1296. <div>
  1297. <h4>Return Value</h4>
  1298. <p>The created <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1299. </div>
  1300. </section>
  1301. </div>
  1302. </li>
  1303. <li class="item">
  1304. <div>
  1305. <code>
  1306. <a name="/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF"></a>
  1307. <a name="//apple_ref/swift/Method/upload(_:with:)" class="dashAnchor"></a>
  1308. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation3URLV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  1309. </code>
  1310. </div>
  1311. <div class="height-container">
  1312. <div class="pointer-container"></div>
  1313. <section class="section">
  1314. <div class="pointer"></div>
  1315. <div class="abstract">
  1316. <p>Creates a <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> from the specified <code>urlRequest</code> for uploading the <code>file</code>.</p>
  1317. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1318. </div>
  1319. <div class="declaration">
  1320. <h4>Declaration</h4>
  1321. <div class="language">
  1322. <p class="aside-title">Swift</p>
  1323. <pre class="highlight"><code><span class="n">open</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>
  1324. </div>
  1325. </div>
  1326. <div>
  1327. <h4>Parameters</h4>
  1328. <table class="graybox">
  1329. <tbody>
  1330. <tr>
  1331. <td>
  1332. <code>
  1333. <em>file</em>
  1334. </code>
  1335. </td>
  1336. <td>
  1337. <div>
  1338. <p>The file to upload.</p>
  1339. </div>
  1340. </td>
  1341. </tr>
  1342. <tr>
  1343. <td>
  1344. <code>
  1345. <em>urlRequest</em>
  1346. </code>
  1347. </td>
  1348. <td>
  1349. <div>
  1350. <p>The URL request.</p>
  1351. </div>
  1352. </td>
  1353. </tr>
  1354. </tbody>
  1355. </table>
  1356. </div>
  1357. <div>
  1358. <h4>Return Value</h4>
  1359. <p>The created <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1360. </div>
  1361. </section>
  1362. </div>
  1363. </li>
  1364. </ul>
  1365. </div>
  1366. <div class="task-group">
  1367. <div class="task-name-container">
  1368. <a name="/Data"></a>
  1369. <a name="//apple_ref/swift/Section/Data" class="dashAnchor"></a>
  1370. <a href="#/Data">
  1371. <h3 class="section-name">Data</h3>
  1372. </a>
  1373. </div>
  1374. <ul class="item-container">
  1375. <li class="item">
  1376. <div>
  1377. <code>
  1378. <a name="/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF"></a>
  1379. <a name="//apple_ref/swift/Method/upload(_:to:method:headers:)" class="dashAnchor"></a>
  1380. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation4DataV_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  1381. </code>
  1382. </div>
  1383. <div class="height-container">
  1384. <div class="pointer-container"></div>
  1385. <section class="section">
  1386. <div class="pointer"></div>
  1387. <div class="abstract">
  1388. <p>Creates an <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> from the specified <code>url</code>, <code>method</code> and <code>headers</code> for uploading the <code>data</code>.</p>
  1389. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1390. </div>
  1391. <div class="declaration">
  1392. <h4>Declaration</h4>
  1393. <div class="language">
  1394. <p class="aside-title">Swift</p>
  1395. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1396. <span class="n">_</span> <span class="nv">data</span><span class="p">:</span> <span class="kt">Data</span><span class="p">,</span>
  1397. <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>
  1398. <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>
  1399. <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>
  1400. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  1401. </div>
  1402. </div>
  1403. <div>
  1404. <h4>Parameters</h4>
  1405. <table class="graybox">
  1406. <tbody>
  1407. <tr>
  1408. <td>
  1409. <code>
  1410. <em>data</em>
  1411. </code>
  1412. </td>
  1413. <td>
  1414. <div>
  1415. <p>The data to upload.</p>
  1416. </div>
  1417. </td>
  1418. </tr>
  1419. <tr>
  1420. <td>
  1421. <code>
  1422. <em>url</em>
  1423. </code>
  1424. </td>
  1425. <td>
  1426. <div>
  1427. <p>The URL.</p>
  1428. </div>
  1429. </td>
  1430. </tr>
  1431. <tr>
  1432. <td>
  1433. <code>
  1434. <em>method</em>
  1435. </code>
  1436. </td>
  1437. <td>
  1438. <div>
  1439. <p>The HTTP method. <code>.post</code> by default.</p>
  1440. </div>
  1441. </td>
  1442. </tr>
  1443. <tr>
  1444. <td>
  1445. <code>
  1446. <em>headers</em>
  1447. </code>
  1448. </td>
  1449. <td>
  1450. <div>
  1451. <p>The HTTP headers. <code>nil</code> by default.</p>
  1452. </div>
  1453. </td>
  1454. </tr>
  1455. </tbody>
  1456. </table>
  1457. </div>
  1458. <div>
  1459. <h4>Return Value</h4>
  1460. <p>The created <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1461. </div>
  1462. </section>
  1463. </div>
  1464. </li>
  1465. <li class="item">
  1466. <div>
  1467. <code>
  1468. <a name="/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF"></a>
  1469. <a name="//apple_ref/swift/Method/upload(_:with:)" class="dashAnchor"></a>
  1470. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestC10Foundation4DataV_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  1471. </code>
  1472. </div>
  1473. <div class="height-container">
  1474. <div class="pointer-container"></div>
  1475. <section class="section">
  1476. <div class="pointer"></div>
  1477. <div class="abstract">
  1478. <p>Creates an <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> from the specified <code>urlRequest</code> for uploading the <code>data</code>.</p>
  1479. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1480. </div>
  1481. <div class="declaration">
  1482. <h4>Declaration</h4>
  1483. <div class="language">
  1484. <p class="aside-title">Swift</p>
  1485. <pre class="highlight"><code><span class="n">open</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>
  1486. </div>
  1487. </div>
  1488. <div>
  1489. <h4>Parameters</h4>
  1490. <table class="graybox">
  1491. <tbody>
  1492. <tr>
  1493. <td>
  1494. <code>
  1495. <em>data</em>
  1496. </code>
  1497. </td>
  1498. <td>
  1499. <div>
  1500. <p>The data to upload.</p>
  1501. </div>
  1502. </td>
  1503. </tr>
  1504. <tr>
  1505. <td>
  1506. <code>
  1507. <em>urlRequest</em>
  1508. </code>
  1509. </td>
  1510. <td>
  1511. <div>
  1512. <p>The URL request.</p>
  1513. </div>
  1514. </td>
  1515. </tr>
  1516. </tbody>
  1517. </table>
  1518. </div>
  1519. <div>
  1520. <h4>Return Value</h4>
  1521. <p>The created <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1522. </div>
  1523. </section>
  1524. </div>
  1525. </li>
  1526. </ul>
  1527. </div>
  1528. <div class="task-group">
  1529. <div class="task-name-container">
  1530. <a name="/InputStream"></a>
  1531. <a name="//apple_ref/swift/Section/InputStream" class="dashAnchor"></a>
  1532. <a href="#/InputStream">
  1533. <h3 class="section-name">InputStream</h3>
  1534. </a>
  1535. </div>
  1536. <ul class="item-container">
  1537. <li class="item">
  1538. <div>
  1539. <code>
  1540. <a name="/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF"></a>
  1541. <a name="//apple_ref/swift/Method/upload(_:to:method:headers:)" class="dashAnchor"></a>
  1542. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestCSo11InputStreamC_AA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headerstF">upload(_:to:method:headers:)</a>
  1543. </code>
  1544. </div>
  1545. <div class="height-container">
  1546. <div class="pointer-container"></div>
  1547. <section class="section">
  1548. <div class="pointer"></div>
  1549. <div class="abstract">
  1550. <p>Creates an <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> from the specified <code>url</code>, <code>method</code> and <code>headers</code> for uploading the <code>stream</code>.</p>
  1551. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1552. </div>
  1553. <div class="declaration">
  1554. <h4>Declaration</h4>
  1555. <div class="language">
  1556. <p class="aside-title">Swift</p>
  1557. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1558. <span class="n">_</span> <span class="nv">stream</span><span class="p">:</span> <span class="kt">InputStream</span><span class="p">,</span>
  1559. <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>
  1560. <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>
  1561. <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>
  1562. <span class="o">-&gt;</span> <span class="kt"><a href="../Classes/UploadRequest.html">UploadRequest</a></span></code></pre>
  1563. </div>
  1564. </div>
  1565. <div>
  1566. <h4>Parameters</h4>
  1567. <table class="graybox">
  1568. <tbody>
  1569. <tr>
  1570. <td>
  1571. <code>
  1572. <em>stream</em>
  1573. </code>
  1574. </td>
  1575. <td>
  1576. <div>
  1577. <p>The stream to upload.</p>
  1578. </div>
  1579. </td>
  1580. </tr>
  1581. <tr>
  1582. <td>
  1583. <code>
  1584. <em>url</em>
  1585. </code>
  1586. </td>
  1587. <td>
  1588. <div>
  1589. <p>The URL.</p>
  1590. </div>
  1591. </td>
  1592. </tr>
  1593. <tr>
  1594. <td>
  1595. <code>
  1596. <em>method</em>
  1597. </code>
  1598. </td>
  1599. <td>
  1600. <div>
  1601. <p>The HTTP method. <code>.post</code> by default.</p>
  1602. </div>
  1603. </td>
  1604. </tr>
  1605. <tr>
  1606. <td>
  1607. <code>
  1608. <em>headers</em>
  1609. </code>
  1610. </td>
  1611. <td>
  1612. <div>
  1613. <p>The HTTP headers. <code>nil</code> by default.</p>
  1614. </div>
  1615. </td>
  1616. </tr>
  1617. </tbody>
  1618. </table>
  1619. </div>
  1620. <div>
  1621. <h4>Return Value</h4>
  1622. <p>The created <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1623. </div>
  1624. </section>
  1625. </div>
  1626. </li>
  1627. <li class="item">
  1628. <div>
  1629. <code>
  1630. <a name="/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF"></a>
  1631. <a name="//apple_ref/swift/Method/upload(_:with:)" class="dashAnchor"></a>
  1632. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadAA13UploadRequestCSo11InputStreamC_AA21URLRequestConvertible_p4withtF">upload(_:with:)</a>
  1633. </code>
  1634. </div>
  1635. <div class="height-container">
  1636. <div class="pointer-container"></div>
  1637. <section class="section">
  1638. <div class="pointer"></div>
  1639. <div class="abstract">
  1640. <p>Creates an <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> from the specified <code>urlRequest</code> for uploading the <code>stream</code>.</p>
  1641. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1642. </div>
  1643. <div class="declaration">
  1644. <h4>Declaration</h4>
  1645. <div class="language">
  1646. <p class="aside-title">Swift</p>
  1647. <pre class="highlight"><code><span class="n">open</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>
  1648. </div>
  1649. </div>
  1650. <div>
  1651. <h4>Parameters</h4>
  1652. <table class="graybox">
  1653. <tbody>
  1654. <tr>
  1655. <td>
  1656. <code>
  1657. <em>stream</em>
  1658. </code>
  1659. </td>
  1660. <td>
  1661. <div>
  1662. <p>The stream to upload.</p>
  1663. </div>
  1664. </td>
  1665. </tr>
  1666. <tr>
  1667. <td>
  1668. <code>
  1669. <em>urlRequest</em>
  1670. </code>
  1671. </td>
  1672. <td>
  1673. <div>
  1674. <p>The URL request.</p>
  1675. </div>
  1676. </td>
  1677. </tr>
  1678. </tbody>
  1679. </table>
  1680. </div>
  1681. <div>
  1682. <h4>Return Value</h4>
  1683. <p>The created <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code>.</p>
  1684. </div>
  1685. </section>
  1686. </div>
  1687. </li>
  1688. </ul>
  1689. </div>
  1690. <div class="task-group">
  1691. <div class="task-name-container">
  1692. <a name="/MultipartFormData"></a>
  1693. <a name="//apple_ref/swift/Section/MultipartFormData" class="dashAnchor"></a>
  1694. <a href="#/MultipartFormData">
  1695. <h3 class="section-name">MultipartFormData</h3>
  1696. </a>
  1697. </div>
  1698. <ul class="item-container">
  1699. <li class="item">
  1700. <div>
  1701. <code>
  1702. <a name="/s:9Alamofire14SessionManagerC6uploadyyAA17MultipartFormDataCc09multipartfG0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAC0efG14EncodingResultOcSg18encodingCompletiontF"></a>
  1703. <a name="//apple_ref/swift/Method/upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)" class="dashAnchor"></a>
  1704. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadyyAA17MultipartFormDataCc09multipartfG0_s6UInt64V14usingThresholdAA14URLConvertible_p2toAA10HTTPMethodO6methods10DictionaryVyS2SGSg7headersyAC0efG14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:to:method:headers:encodingCompletion:)</a>
  1705. </code>
  1706. </div>
  1707. <div class="height-container">
  1708. <div class="pointer-container"></div>
  1709. <section class="section">
  1710. <div class="pointer"></div>
  1711. <div class="abstract">
  1712. <p>Encodes <code>multipartFormData</code> using <code>encodingMemoryThreshold</code> and calls <code>encodingCompletion</code> with new
  1713. <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> using the <code>url</code>, <code>method</code> and <code>headers</code>.</p>
  1714. <p>It is important to understand the memory implications of uploading <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code>. If the cummulative
  1715. payload is small, encoding the data in-memory and directly uploading to a server is the by far the most
  1716. efficient approach. However, if the payload is too large, encoding the data in-memory could cause your app to
  1717. be terminated. Larger payloads must first be written to disk using input and output streams to keep the memory
  1718. footprint low, then the data can be uploaded as a stream from the resulting file. Streaming from disk MUST be
  1719. used for larger payloads such as video content.</p>
  1720. <p>The <code>encodingMemoryThreshold</code> parameter allows Alamofire to automatically determine whether to encode in-memory
  1721. 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>,
  1722. encoding takes place in-memory. If the content length exceeds the threshold, the data is streamed to disk
  1723. during the encoding process. Then the result is uploaded as data or as a stream depending on which encoding
  1724. technique was used.</p>
  1725. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1726. </div>
  1727. <div class="declaration">
  1728. <h4>Declaration</h4>
  1729. <div class="language">
  1730. <p class="aside-title">Swift</p>
  1731. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1732. <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>
  1733. <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">SessionManager</span><span class="o">.</span><span class="n"><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC40multipartFormDataEncodingMemoryThresholds6UInt64VvZ">multipartFormDataEncodingMemoryThreshold</a></span><span class="p">,</span>
  1734. <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>
  1735. <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>
  1736. <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>
  1737. <span class="nv">encodingCompletion</span><span class="p">:</span> <span class="p">((</span><span class="kt"><a href="../Classes/SessionManager/MultipartFormDataEncodingResult.html">MultipartFormDataEncodingResult</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?)</span></code></pre>
  1738. </div>
  1739. </div>
  1740. <div>
  1741. <h4>Parameters</h4>
  1742. <table class="graybox">
  1743. <tbody>
  1744. <tr>
  1745. <td>
  1746. <code>
  1747. <em>multipartFormData</em>
  1748. </code>
  1749. </td>
  1750. <td>
  1751. <div>
  1752. <p>The closure used to append body parts to the <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code>.</p>
  1753. </div>
  1754. </td>
  1755. </tr>
  1756. <tr>
  1757. <td>
  1758. <code>
  1759. <em>encodingMemoryThreshold</em>
  1760. </code>
  1761. </td>
  1762. <td>
  1763. <div>
  1764. <p>The encoding memory threshold in bytes.
  1765. <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC40multipartFormDataEncodingMemoryThresholds6UInt64VvZ">multipartFormDataEncodingMemoryThreshold</a></code> by default.</p>
  1766. </div>
  1767. </td>
  1768. </tr>
  1769. <tr>
  1770. <td>
  1771. <code>
  1772. <em>url</em>
  1773. </code>
  1774. </td>
  1775. <td>
  1776. <div>
  1777. <p>The URL.</p>
  1778. </div>
  1779. </td>
  1780. </tr>
  1781. <tr>
  1782. <td>
  1783. <code>
  1784. <em>method</em>
  1785. </code>
  1786. </td>
  1787. <td>
  1788. <div>
  1789. <p>The HTTP method. <code>.post</code> by default.</p>
  1790. </div>
  1791. </td>
  1792. </tr>
  1793. <tr>
  1794. <td>
  1795. <code>
  1796. <em>headers</em>
  1797. </code>
  1798. </td>
  1799. <td>
  1800. <div>
  1801. <p>The HTTP headers. <code>nil</code> by default.</p>
  1802. </div>
  1803. </td>
  1804. </tr>
  1805. <tr>
  1806. <td>
  1807. <code>
  1808. <em>encodingCompletion</em>
  1809. </code>
  1810. </td>
  1811. <td>
  1812. <div>
  1813. <p>The closure called when the <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code> encoding is complete.</p>
  1814. </div>
  1815. </td>
  1816. </tr>
  1817. </tbody>
  1818. </table>
  1819. </div>
  1820. </section>
  1821. </div>
  1822. </li>
  1823. <li class="item">
  1824. <div>
  1825. <code>
  1826. <a name="/s:9Alamofire14SessionManagerC6uploadyyAA17MultipartFormDataCc09multipartfG0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAC0efG14EncodingResultOcSg18encodingCompletiontF"></a>
  1827. <a name="//apple_ref/swift/Method/upload(multipartFormData:usingThreshold:with:encodingCompletion:)" class="dashAnchor"></a>
  1828. <a class="token" href="#/s:9Alamofire14SessionManagerC6uploadyyAA17MultipartFormDataCc09multipartfG0_s6UInt64V14usingThresholdAA21URLRequestConvertible_p4withyAC0efG14EncodingResultOcSg18encodingCompletiontF">upload(multipartFormData:usingThreshold:with:encodingCompletion:)</a>
  1829. </code>
  1830. </div>
  1831. <div class="height-container">
  1832. <div class="pointer-container"></div>
  1833. <section class="section">
  1834. <div class="pointer"></div>
  1835. <div class="abstract">
  1836. <p>Encodes <code>multipartFormData</code> using <code>encodingMemoryThreshold</code> and calls <code>encodingCompletion</code> with new
  1837. <code><a href="../Classes/UploadRequest.html">UploadRequest</a></code> using the <code>urlRequest</code>.</p>
  1838. <p>It is important to understand the memory implications of uploading <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code>. If the cummulative
  1839. payload is small, encoding the data in-memory and directly uploading to a server is the by far the most
  1840. efficient approach. However, if the payload is too large, encoding the data in-memory could cause your app to
  1841. be terminated. Larger payloads must first be written to disk using input and output streams to keep the memory
  1842. footprint low, then the data can be uploaded as a stream from the resulting file. Streaming from disk MUST be
  1843. used for larger payloads such as video content.</p>
  1844. <p>The <code>encodingMemoryThreshold</code> parameter allows Alamofire to automatically determine whether to encode in-memory
  1845. 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>,
  1846. encoding takes place in-memory. If the content length exceeds the threshold, the data is streamed to disk
  1847. during the encoding process. Then the result is uploaded as data or as a stream depending on which encoding
  1848. technique was used.</p>
  1849. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1850. </div>
  1851. <div class="declaration">
  1852. <h4>Declaration</h4>
  1853. <div class="language">
  1854. <p class="aside-title">Swift</p>
  1855. <pre class="highlight"><code><span class="n">open</span> <span class="kd">func</span> <span class="nf">upload</span><span class="p">(</span>
  1856. <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>
  1857. <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">SessionManager</span><span class="o">.</span><span class="n"><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC40multipartFormDataEncodingMemoryThresholds6UInt64VvZ">multipartFormDataEncodingMemoryThreshold</a></span><span class="p">,</span>
  1858. <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>
  1859. <span class="nv">encodingCompletion</span><span class="p">:</span> <span class="p">((</span><span class="kt"><a href="../Classes/SessionManager/MultipartFormDataEncodingResult.html">MultipartFormDataEncodingResult</a></span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">Void</span><span class="p">)?)</span></code></pre>
  1860. </div>
  1861. </div>
  1862. <div>
  1863. <h4>Parameters</h4>
  1864. <table class="graybox">
  1865. <tbody>
  1866. <tr>
  1867. <td>
  1868. <code>
  1869. <em>multipartFormData</em>
  1870. </code>
  1871. </td>
  1872. <td>
  1873. <div>
  1874. <p>The closure used to append body parts to the <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code>.</p>
  1875. </div>
  1876. </td>
  1877. </tr>
  1878. <tr>
  1879. <td>
  1880. <code>
  1881. <em>encodingMemoryThreshold</em>
  1882. </code>
  1883. </td>
  1884. <td>
  1885. <div>
  1886. <p>The encoding memory threshold in bytes.
  1887. <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC40multipartFormDataEncodingMemoryThresholds6UInt64VvZ">multipartFormDataEncodingMemoryThreshold</a></code> by default.</p>
  1888. </div>
  1889. </td>
  1890. </tr>
  1891. <tr>
  1892. <td>
  1893. <code>
  1894. <em>urlRequest</em>
  1895. </code>
  1896. </td>
  1897. <td>
  1898. <div>
  1899. <p>The URL request.</p>
  1900. </div>
  1901. </td>
  1902. </tr>
  1903. <tr>
  1904. <td>
  1905. <code>
  1906. <em>encodingCompletion</em>
  1907. </code>
  1908. </td>
  1909. <td>
  1910. <div>
  1911. <p>The closure called when the <code><a href="../Classes/MultipartFormData.html">MultipartFormData</a></code> encoding is complete.</p>
  1912. </div>
  1913. </td>
  1914. </tr>
  1915. </tbody>
  1916. </table>
  1917. </div>
  1918. </section>
  1919. </div>
  1920. </li>
  1921. </ul>
  1922. </div>
  1923. <div class="task-group">
  1924. <div class="task-name-container">
  1925. <a name="/Hostname%20and%20Port"></a>
  1926. <a name="//apple_ref/swift/Section/Hostname and Port" class="dashAnchor"></a>
  1927. <a href="#/Hostname%20and%20Port">
  1928. <h3 class="section-name">Hostname and Port</h3>
  1929. </a>
  1930. </div>
  1931. <ul class="item-container">
  1932. <li class="item">
  1933. <div>
  1934. <code>
  1935. <a name="/s:9Alamofire14SessionManagerC6streamAA13StreamRequestCSS12withHostName_Si4porttF"></a>
  1936. <a name="//apple_ref/swift/Method/stream(withHostName:port:)" class="dashAnchor"></a>
  1937. <a class="token" href="#/s:9Alamofire14SessionManagerC6streamAA13StreamRequestCSS12withHostName_Si4porttF">stream(withHostName:port:)</a>
  1938. </code>
  1939. </div>
  1940. <div class="height-container">
  1941. <div class="pointer-container"></div>
  1942. <section class="section">
  1943. <div class="pointer"></div>
  1944. <div class="abstract">
  1945. <p>Creates a <code><a href="../Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code> for bidirectional streaming using the <code>hostname</code> and <code>port</code>.</p>
  1946. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  1947. </div>
  1948. <div class="declaration">
  1949. <h4>Declaration</h4>
  1950. <div class="language">
  1951. <p class="aside-title">Swift</p>
  1952. <pre class="highlight"><code><span class="n">open</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>
  1953. </div>
  1954. </div>
  1955. <div>
  1956. <h4>Parameters</h4>
  1957. <table class="graybox">
  1958. <tbody>
  1959. <tr>
  1960. <td>
  1961. <code>
  1962. <em>hostName</em>
  1963. </code>
  1964. </td>
  1965. <td>
  1966. <div>
  1967. <p>The hostname of the server to connect to.</p>
  1968. </div>
  1969. </td>
  1970. </tr>
  1971. <tr>
  1972. <td>
  1973. <code>
  1974. <em>port</em>
  1975. </code>
  1976. </td>
  1977. <td>
  1978. <div>
  1979. <p>The port of the server to connect to.</p>
  1980. </div>
  1981. </td>
  1982. </tr>
  1983. </tbody>
  1984. </table>
  1985. </div>
  1986. <div>
  1987. <h4>Return Value</h4>
  1988. <p>The created <code><a href="../Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code>.</p>
  1989. </div>
  1990. </section>
  1991. </div>
  1992. </li>
  1993. </ul>
  1994. </div>
  1995. <div class="task-group">
  1996. <div class="task-name-container">
  1997. <a name="/NetService"></a>
  1998. <a name="//apple_ref/swift/Section/NetService" class="dashAnchor"></a>
  1999. <a href="#/NetService">
  2000. <h3 class="section-name">NetService</h3>
  2001. </a>
  2002. </div>
  2003. <ul class="item-container">
  2004. <li class="item">
  2005. <div>
  2006. <code>
  2007. <a name="/s:9Alamofire14SessionManagerC6streamAA13StreamRequestCSo10NetServiceC4with_tF"></a>
  2008. <a name="//apple_ref/swift/Method/stream(with:)" class="dashAnchor"></a>
  2009. <a class="token" href="#/s:9Alamofire14SessionManagerC6streamAA13StreamRequestCSo10NetServiceC4with_tF">stream(with:)</a>
  2010. </code>
  2011. </div>
  2012. <div class="height-container">
  2013. <div class="pointer-container"></div>
  2014. <section class="section">
  2015. <div class="pointer"></div>
  2016. <div class="abstract">
  2017. <p>Creates a <code><a href="../Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code> for bidirectional streaming using the <code>netService</code>.</p>
  2018. <p>If <code><a href="../Classes/SessionManager.html#/s:9Alamofire14SessionManagerC24startRequestsImmediatelySbv">startRequestsImmediately</a></code> is <code>true</code>, the request will have <code>resume()</code> called before being returned.</p>
  2019. </div>
  2020. <div class="declaration">
  2021. <h4>Declaration</h4>
  2022. <div class="language">
  2023. <p class="aside-title">Swift</p>
  2024. <pre class="highlight"><code><span class="n">open</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>
  2025. </div>
  2026. </div>
  2027. <div>
  2028. <h4>Parameters</h4>
  2029. <table class="graybox">
  2030. <tbody>
  2031. <tr>
  2032. <td>
  2033. <code>
  2034. <em>netService</em>
  2035. </code>
  2036. </td>
  2037. <td>
  2038. <div>
  2039. <p>The net service used to identify the endpoint.</p>
  2040. </div>
  2041. </td>
  2042. </tr>
  2043. </tbody>
  2044. </table>
  2045. </div>
  2046. <div>
  2047. <h4>Return Value</h4>
  2048. <p>The created <code><a href="../Classes.html#/s:9Alamofire13StreamRequestC">StreamRequest</a></code>.</p>
  2049. </div>
  2050. </section>
  2051. </div>
  2052. </li>
  2053. </ul>
  2054. </div>
  2055. </div>
  2056. </section>
  2057. </article>
  2058. </div>
  2059. <section class="footer">
  2060. <p>&copy; 2017 <a class="link" href="http://alamofire.org/" target="_blank" rel="external">Alamofire Software Foundation</a>. All rights reserved. (Last updated: 2017-12-03)</p>
  2061. <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.0</a>, a <a class="link" href="http://realm.io" target="_blank" rel="external">Realm</a> project.</p>
  2062. </section>
  2063. </body>
  2064. </div>
  2065. </html>