URLEncoding.html 52 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>URLEncoding Structure 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/Struct/URLEncoding" class="dashAnchor"></a>
  16. <a title="URLEncoding Structure 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. (77% 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. URLEncoding Structure 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/Adapter.html">Adapter</a>
  55. </li>
  56. <li class="nav-group-task">
  57. <a class="nav-group-task-link" href="../Classes/AlamofireNotifications.html">AlamofireNotifications</a>
  58. </li>
  59. <li class="nav-group-task">
  60. <a class="nav-group-task-link" href="../Classes/ClosureEventMonitor.html">ClosureEventMonitor</a>
  61. </li>
  62. <li class="nav-group-task">
  63. <a class="nav-group-task-link" href="../Classes/CompositeEventMonitor.html">CompositeEventMonitor</a>
  64. </li>
  65. <li class="nav-group-task">
  66. <a class="nav-group-task-link" href="../Classes/CompositeTrustEvaluator.html">CompositeTrustEvaluator</a>
  67. </li>
  68. <li class="nav-group-task">
  69. <a class="nav-group-task-link" href="../Classes/ConnectionLostRetryPolicy.html">ConnectionLostRetryPolicy</a>
  70. </li>
  71. <li class="nav-group-task">
  72. <a class="nav-group-task-link" href="../Classes/DataRequest.html">DataRequest</a>
  73. </li>
  74. <li class="nav-group-task">
  75. <a class="nav-group-task-link" href="../Classes/DataResponseSerializer.html">DataResponseSerializer</a>
  76. </li>
  77. <li class="nav-group-task">
  78. <a class="nav-group-task-link" href="../Classes/DecodableResponseSerializer.html">DecodableResponseSerializer</a>
  79. </li>
  80. <li class="nav-group-task">
  81. <a class="nav-group-task-link" href="../Classes/DefaultTrustEvaluator.html">DefaultTrustEvaluator</a>
  82. </li>
  83. <li class="nav-group-task">
  84. <a class="nav-group-task-link" href="../Classes/DisabledEvaluator.html">DisabledEvaluator</a>
  85. </li>
  86. <li class="nav-group-task">
  87. <a class="nav-group-task-link" href="../Classes/DownloadRequest.html">DownloadRequest</a>
  88. </li>
  89. <li class="nav-group-task">
  90. <a class="nav-group-task-link" href="../Classes/DownloadRequest/Options.html">– Options</a>
  91. </li>
  92. <li class="nav-group-task">
  93. <a class="nav-group-task-link" href="../Classes/DownloadRequest/Downloadable.html">– Downloadable</a>
  94. </li>
  95. <li class="nav-group-task">
  96. <a class="nav-group-task-link" href="../Classes/Interceptor.html">Interceptor</a>
  97. </li>
  98. <li class="nav-group-task">
  99. <a class="nav-group-task-link" href="../Classes/JSONParameterEncoder.html">JSONParameterEncoder</a>
  100. </li>
  101. <li class="nav-group-task">
  102. <a class="nav-group-task-link" href="../Classes/JSONResponseSerializer.html">JSONResponseSerializer</a>
  103. </li>
  104. <li class="nav-group-task">
  105. <a class="nav-group-task-link" href="../Classes/MultipartFormData.html">MultipartFormData</a>
  106. </li>
  107. <li class="nav-group-task">
  108. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager.html">NetworkReachabilityManager</a>
  109. </li>
  110. <li class="nav-group-task">
  111. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/NetworkReachabilityStatus.html">– NetworkReachabilityStatus</a>
  112. </li>
  113. <li class="nav-group-task">
  114. <a class="nav-group-task-link" href="../Classes/NetworkReachabilityManager/ConnectionType.html">– ConnectionType</a>
  115. </li>
  116. <li class="nav-group-task">
  117. <a class="nav-group-task-link" href="../Classes/PinnedCertificatesTrustEvaluator.html">PinnedCertificatesTrustEvaluator</a>
  118. </li>
  119. <li class="nav-group-task">
  120. <a class="nav-group-task-link" href="../Classes/PublicKeysTrustEvaluator.html">PublicKeysTrustEvaluator</a>
  121. </li>
  122. <li class="nav-group-task">
  123. <a class="nav-group-task-link" href="../Classes/Request.html">Request</a>
  124. </li>
  125. <li class="nav-group-task">
  126. <a class="nav-group-task-link" href="../Classes/Request/State.html">– State</a>
  127. </li>
  128. <li class="nav-group-task">
  129. <a class="nav-group-task-link" href="../Classes/Retrier.html">Retrier</a>
  130. </li>
  131. <li class="nav-group-task">
  132. <a class="nav-group-task-link" href="../Classes/RetryPolicy.html">RetryPolicy</a>
  133. </li>
  134. <li class="nav-group-task">
  135. <a class="nav-group-task-link" href="../Classes/RevocationTrustEvaluator.html">RevocationTrustEvaluator</a>
  136. </li>
  137. <li class="nav-group-task">
  138. <a class="nav-group-task-link" href="../Classes/RevocationTrustEvaluator/Options.html">– Options</a>
  139. </li>
  140. <li class="nav-group-task">
  141. <a class="nav-group-task-link" href="../Classes/ServerTrustManager.html">ServerTrustManager</a>
  142. </li>
  143. <li class="nav-group-task">
  144. <a class="nav-group-task-link" href="../Classes/Session.html">Session</a>
  145. </li>
  146. <li class="nav-group-task">
  147. <a class="nav-group-task-link" href="../Classes/SessionDelegate.html">SessionDelegate</a>
  148. </li>
  149. <li class="nav-group-task">
  150. <a class="nav-group-task-link" href="../Classes/StringResponseSerializer.html">StringResponseSerializer</a>
  151. </li>
  152. <li class="nav-group-task">
  153. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder.html">URLEncodedFormEncoder</a>
  154. </li>
  155. <li class="nav-group-task">
  156. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/BoolEncoding.html">– BoolEncoding</a>
  157. </li>
  158. <li class="nav-group-task">
  159. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/ArrayEncoding.html">– ArrayEncoding</a>
  160. </li>
  161. <li class="nav-group-task">
  162. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/SpaceEncoding.html">– SpaceEncoding</a>
  163. </li>
  164. <li class="nav-group-task">
  165. <a class="nav-group-task-link" href="../Classes/URLEncodedFormEncoder/Error.html">– Error</a>
  166. </li>
  167. <li class="nav-group-task">
  168. <a class="nav-group-task-link" href="../Classes/URLEncodedFormParameterEncoder.html">URLEncodedFormParameterEncoder</a>
  169. </li>
  170. <li class="nav-group-task">
  171. <a class="nav-group-task-link" href="../Classes/URLEncodedFormParameterEncoder/Destination.html">– Destination</a>
  172. </li>
  173. <li class="nav-group-task">
  174. <a class="nav-group-task-link" href="../Classes/UploadRequest.html">UploadRequest</a>
  175. </li>
  176. <li class="nav-group-task">
  177. <a class="nav-group-task-link" href="../Classes/UploadRequest/Uploadable.html">– Uploadable</a>
  178. </li>
  179. </ul>
  180. </li>
  181. <li class="nav-group-name">
  182. <a class="nav-group-name-link" href="../Enums.html">Enumerations</a>
  183. <ul class="nav-group-tasks">
  184. <li class="nav-group-task">
  185. <a class="nav-group-task-link" href="../Enums/AF.html">AF</a>
  186. </li>
  187. <li class="nav-group-task">
  188. <a class="nav-group-task-link" href="../Enums/AFError.html">AFError</a>
  189. </li>
  190. <li class="nav-group-task">
  191. <a class="nav-group-task-link" href="../Enums/AFError/ParameterEncodingFailureReason.html">– ParameterEncodingFailureReason</a>
  192. </li>
  193. <li class="nav-group-task">
  194. <a class="nav-group-task-link" href="../Enums/AFError/ParameterEncoderFailureReason.html">– ParameterEncoderFailureReason</a>
  195. </li>
  196. <li class="nav-group-task">
  197. <a class="nav-group-task-link" href="../Enums/AFError/MultipartEncodingFailureReason.html">– MultipartEncodingFailureReason</a>
  198. </li>
  199. <li class="nav-group-task">
  200. <a class="nav-group-task-link" href="../Enums/AFError/ResponseValidationFailureReason.html">– ResponseValidationFailureReason</a>
  201. </li>
  202. <li class="nav-group-task">
  203. <a class="nav-group-task-link" href="../Enums/AFError/ResponseSerializationFailureReason.html">– ResponseSerializationFailureReason</a>
  204. </li>
  205. <li class="nav-group-task">
  206. <a class="nav-group-task-link" href="../Enums/AFError/ServerTrustFailureReason.html">– ServerTrustFailureReason</a>
  207. </li>
  208. <li class="nav-group-task">
  209. <a class="nav-group-task-link" href="../Enums/HTTPMethod.html">HTTPMethod</a>
  210. </li>
  211. <li class="nav-group-task">
  212. <a class="nav-group-task-link" href="../Enums/RetryResult.html">RetryResult</a>
  213. </li>
  214. </ul>
  215. </li>
  216. <li class="nav-group-name">
  217. <a class="nav-group-name-link" href="../Extensions.html">Extensions</a>
  218. <ul class="nav-group-tasks">
  219. <li class="nav-group-task">
  220. <a class="nav-group-task-link" href="../Extensions/Array.html">Array</a>
  221. </li>
  222. <li class="nav-group-task">
  223. <a class="nav-group-task-link" href="../Extensions/CharacterSet.html">CharacterSet</a>
  224. </li>
  225. <li class="nav-group-task">
  226. <a class="nav-group-task-link" href="../Extensions/Error.html">Error</a>
  227. </li>
  228. <li class="nav-group-task">
  229. <a class="nav-group-task-link" href="../Extensions/HTTPURLResponse.html">HTTPURLResponse</a>
  230. </li>
  231. <li class="nav-group-task">
  232. <a class="nav-group-task-link" href="../Extensions/Notification.html">Notification</a>
  233. </li>
  234. <li class="nav-group-task">
  235. <a class="nav-group-task-link" href="../Extensions/String.html">String</a>
  236. </li>
  237. <li class="nav-group-task">
  238. <a class="nav-group-task-link" href="../Extensions/URL.html">URL</a>
  239. </li>
  240. <li class="nav-group-task">
  241. <a class="nav-group-task-link" href="../Extensions/URLComponents.html">URLComponents</a>
  242. </li>
  243. <li class="nav-group-task">
  244. <a class="nav-group-task-link" href="../Extensions/URLRequest.html">URLRequest</a>
  245. </li>
  246. <li class="nav-group-task">
  247. <a class="nav-group-task-link" href="../Extensions/URLSessionConfiguration.html">URLSessionConfiguration</a>
  248. </li>
  249. </ul>
  250. </li>
  251. <li class="nav-group-name">
  252. <a class="nav-group-name-link" href="../Functions.html">Functions</a>
  253. <ul class="nav-group-tasks">
  254. <li class="nav-group-task">
  255. <a class="nav-group-task-link" href="../Functions.html#/s:9Alamofire2eeoiySbAA26NetworkReachabilityManagerC0cD6StatusO_AFtF">==(_:_:)</a>
  256. </li>
  257. </ul>
  258. </li>
  259. <li class="nav-group-name">
  260. <a class="nav-group-name-link" href="../Protocols.html">Protocols</a>
  261. <ul class="nav-group-tasks">
  262. <li class="nav-group-task">
  263. <a class="nav-group-task-link" href="../Protocols/AlamofireExtended.html">AlamofireExtended</a>
  264. </li>
  265. <li class="nav-group-task">
  266. <a class="nav-group-task-link" href="../Protocols/CachedResponseHandler.html">CachedResponseHandler</a>
  267. </li>
  268. <li class="nav-group-task">
  269. <a class="nav-group-task-link" href="../Protocols/DataDecoder.html">DataDecoder</a>
  270. </li>
  271. <li class="nav-group-task">
  272. <a class="nav-group-task-link" href="../Protocols/DataResponseSerializerProtocol.html">DataResponseSerializerProtocol</a>
  273. </li>
  274. <li class="nav-group-task">
  275. <a class="nav-group-task-link" href="../Protocols/DownloadResponseSerializerProtocol.html">DownloadResponseSerializerProtocol</a>
  276. </li>
  277. <li class="nav-group-task">
  278. <a class="nav-group-task-link" href="../Protocols/EmptyResponse.html">EmptyResponse</a>
  279. </li>
  280. <li class="nav-group-task">
  281. <a class="nav-group-task-link" href="../Protocols/EventMonitor.html">EventMonitor</a>
  282. </li>
  283. <li class="nav-group-task">
  284. <a class="nav-group-task-link" href="../Protocols/ParameterEncoder.html">ParameterEncoder</a>
  285. </li>
  286. <li class="nav-group-task">
  287. <a class="nav-group-task-link" href="../Protocols/ParameterEncoding.html">ParameterEncoding</a>
  288. </li>
  289. <li class="nav-group-task">
  290. <a class="nav-group-task-link" href="../Protocols/RedirectHandler.html">RedirectHandler</a>
  291. </li>
  292. <li class="nav-group-task">
  293. <a class="nav-group-task-link" href="../Protocols/RequestAdapter.html">RequestAdapter</a>
  294. </li>
  295. <li class="nav-group-task">
  296. <a class="nav-group-task-link" href="../Protocols/RequestDelegate.html">RequestDelegate</a>
  297. </li>
  298. <li class="nav-group-task">
  299. <a class="nav-group-task-link" href="../Protocols/RequestInterceptor.html">RequestInterceptor</a>
  300. </li>
  301. <li class="nav-group-task">
  302. <a class="nav-group-task-link" href="../Protocols/RequestRetrier.html">RequestRetrier</a>
  303. </li>
  304. <li class="nav-group-task">
  305. <a class="nav-group-task-link" href="../Protocols/ResponseSerializer.html">ResponseSerializer</a>
  306. </li>
  307. <li class="nav-group-task">
  308. <a class="nav-group-task-link" href="../Protocols/ServerTrustEvaluating.html">ServerTrustEvaluating</a>
  309. </li>
  310. <li class="nav-group-task">
  311. <a class="nav-group-task-link" href="../Protocols/URLConvertible.html">URLConvertible</a>
  312. </li>
  313. <li class="nav-group-task">
  314. <a class="nav-group-task-link" href="../Protocols/URLRequestConvertible.html">URLRequestConvertible</a>
  315. </li>
  316. <li class="nav-group-task">
  317. <a class="nav-group-task-link" href="../Protocols.html#/s:9Alamofire17UploadConvertibleP">UploadConvertible</a>
  318. </li>
  319. <li class="nav-group-task">
  320. <a class="nav-group-task-link" href="../Protocols/UploadableConvertible.html">UploadableConvertible</a>
  321. </li>
  322. </ul>
  323. </li>
  324. <li class="nav-group-name">
  325. <a class="nav-group-name-link" href="../Structs.html">Structures</a>
  326. <ul class="nav-group-tasks">
  327. <li class="nav-group-task">
  328. <a class="nav-group-task-link" href="../Structs/AlamofireExtension.html">AlamofireExtension</a>
  329. </li>
  330. <li class="nav-group-task">
  331. <a class="nav-group-task-link" href="../Structs/DataResponse.html">DataResponse</a>
  332. </li>
  333. <li class="nav-group-task">
  334. <a class="nav-group-task-link" href="../Structs/DownloadResponse.html">DownloadResponse</a>
  335. </li>
  336. <li class="nav-group-task">
  337. <a class="nav-group-task-link" href="../Structs/Empty.html">Empty</a>
  338. </li>
  339. <li class="nav-group-task">
  340. <a class="nav-group-task-link" href="../Structs/HTTPHeader.html">HTTPHeader</a>
  341. </li>
  342. <li class="nav-group-task">
  343. <a class="nav-group-task-link" href="../Structs/HTTPHeaders.html">HTTPHeaders</a>
  344. </li>
  345. <li class="nav-group-task">
  346. <a class="nav-group-task-link" href="../Structs/JSONEncoding.html">JSONEncoding</a>
  347. </li>
  348. <li class="nav-group-task">
  349. <a class="nav-group-task-link" href="../Structs/Redirector.html">Redirector</a>
  350. </li>
  351. <li class="nav-group-task">
  352. <a class="nav-group-task-link" href="../Structs/Redirector/Behavior.html">– Behavior</a>
  353. </li>
  354. <li class="nav-group-task">
  355. <a class="nav-group-task-link" href="../Structs/ResponseCacher.html">ResponseCacher</a>
  356. </li>
  357. <li class="nav-group-task">
  358. <a class="nav-group-task-link" href="../Structs/ResponseCacher/Behavior.html">– Behavior</a>
  359. </li>
  360. <li class="nav-group-task">
  361. <a class="nav-group-task-link" href="../Structs/URLEncoding.html">URLEncoding</a>
  362. </li>
  363. <li class="nav-group-task">
  364. <a class="nav-group-task-link" href="../Structs/URLEncoding/Destination.html">– Destination</a>
  365. </li>
  366. <li class="nav-group-task">
  367. <a class="nav-group-task-link" href="../Structs/URLEncoding/ArrayEncoding.html">– ArrayEncoding</a>
  368. </li>
  369. <li class="nav-group-task">
  370. <a class="nav-group-task-link" href="../Structs/URLEncoding/BoolEncoding.html">– BoolEncoding</a>
  371. </li>
  372. </ul>
  373. </li>
  374. <li class="nav-group-name">
  375. <a class="nav-group-name-link" href="../Typealiases.html">Type Aliases</a>
  376. <ul class="nav-group-tasks">
  377. <li class="nav-group-task">
  378. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire8AFResulta">AFResult</a>
  379. </li>
  380. <li class="nav-group-task">
  381. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire12AdaptHandlera">AdaptHandler</a>
  382. </li>
  383. <li class="nav-group-task">
  384. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire10Parametersa">Parameters</a>
  385. </li>
  386. <li class="nav-group-task">
  387. <a class="nav-group-task-link" href="../Typealiases.html#/s:9Alamofire12RetryHandlera">RetryHandler</a>
  388. </li>
  389. </ul>
  390. </li>
  391. </ul>
  392. </nav>
  393. <article class="main-content">
  394. <section class="section">
  395. <div class="section-content">
  396. <h1>URLEncoding</h1>
  397. <div class="declaration">
  398. <div class="language">
  399. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">struct</span> <span class="kt">URLEncoding</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/ParameterEncoding.html">ParameterEncoding</a></span></code></pre>
  400. </div>
  401. </div>
  402. <p>Creates a url-encoded query string to be set as or appended to any existing URL query string or set as the HTTP
  403. body of the URL request. Whether the query string is set or appended to any existing URL query string or set as
  404. the HTTP body depends on the destination of the encoding.</p>
  405. <p>The <code>Content-Type</code> HTTP header field of an encoded request with HTTP body is set to
  406. <code>application/x-www-form-urlencoded; charset=utf-8</code>.</p>
  407. <p>There is no published specification for how to encode collection types. By default the convention of appending
  408. <code>[]</code> to the key for array values (<code>foo[]=1&amp;foo[]=2</code>), and appending the key surrounded by square brackets for
  409. nested dictionary values (<code>foo[bar]=baz</code>) is used. Optionally, <code>ArrayEncoding</code> can be used to omit the
  410. square brackets appended to array keys.</p>
  411. <p><code>BoolEncoding</code> can be used to configure how boolean values are encoded. The default behavior is to encode
  412. <code>true</code> as 1 and <code>false</code> as 0.</p>
  413. </div>
  414. </section>
  415. <section class="section">
  416. <div class="section-content">
  417. <div class="task-group">
  418. <div class="task-name-container">
  419. <a name="/Helper%20Types"></a>
  420. <a name="//apple_ref/swift/Section/Helper Types" class="dashAnchor"></a>
  421. <a href="#/Helper%20Types">
  422. <h3 class="section-name">Helper Types</h3>
  423. </a>
  424. </div>
  425. <ul class="item-container">
  426. <li class="item">
  427. <div>
  428. <code>
  429. <a name="/s:9Alamofire11URLEncodingV11DestinationO"></a>
  430. <a name="//apple_ref/swift/Enum/Destination" class="dashAnchor"></a>
  431. <a class="token" href="#/s:9Alamofire11URLEncodingV11DestinationO">Destination</a>
  432. </code>
  433. </div>
  434. <div class="height-container">
  435. <div class="pointer-container"></div>
  436. <section class="section">
  437. <div class="pointer"></div>
  438. <div class="abstract">
  439. <p>Defines whether the url-encoded query string is applied to the existing query string or HTTP body of the
  440. resulting URL request.</p>
  441. <ul>
  442. <li>methodDependent: Applies encoded query string result to existing query string for <code>GET</code>, <code>HEAD</code> and <code>DELETE</code>
  443. requests and sets as the HTTP body for requests with any other HTTP method.</li>
  444. <li>queryString: Sets or appends encoded query string result to existing query string.</li>
  445. <li>httpBody: Sets encoded query string result as the HTTP body of the URL request.</li>
  446. </ul>
  447. <a href="../Structs/URLEncoding/Destination.html" class="slightly-smaller">See more</a>
  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 swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">Destination</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:9Alamofire11URLEncodingV13ArrayEncodingO"></a>
  463. <a name="//apple_ref/swift/Enum/ArrayEncoding" class="dashAnchor"></a>
  464. <a class="token" href="#/s:9Alamofire11URLEncodingV13ArrayEncodingO">ArrayEncoding</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>Configures how <code>Array</code> parameters are encoded.</p>
  473. <ul>
  474. <li>brackets: An empty set of square brackets is appended to the key for every value.
  475. This is the default behavior.</li>
  476. <li>noBrackets: No brackets are appended. The key is encoded as is.</li>
  477. </ul>
  478. <a href="../Structs/URLEncoding/ArrayEncoding.html" class="slightly-smaller">See more</a>
  479. </div>
  480. <div class="declaration">
  481. <h4>Declaration</h4>
  482. <div class="language">
  483. <p class="aside-title">Swift</p>
  484. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">ArrayEncoding</span></code></pre>
  485. </div>
  486. </div>
  487. </section>
  488. </div>
  489. </li>
  490. <li class="item">
  491. <div>
  492. <code>
  493. <a name="/s:9Alamofire11URLEncodingV12BoolEncodingO"></a>
  494. <a name="//apple_ref/swift/Enum/BoolEncoding" class="dashAnchor"></a>
  495. <a class="token" href="#/s:9Alamofire11URLEncodingV12BoolEncodingO">BoolEncoding</a>
  496. </code>
  497. </div>
  498. <div class="height-container">
  499. <div class="pointer-container"></div>
  500. <section class="section">
  501. <div class="pointer"></div>
  502. <div class="abstract">
  503. <p>Configures how <code>Bool</code> parameters are encoded.</p>
  504. <ul>
  505. <li>numeric: Encode <code>true</code> as <code>1</code> and <code>false</code> as <code>0</code>. This is the default behavior.</li>
  506. <li>literal: Encode <code>true</code> and <code>false</code> as string literals.</li>
  507. </ul>
  508. <a href="../Structs/URLEncoding/BoolEncoding.html" class="slightly-smaller">See more</a>
  509. </div>
  510. <div class="declaration">
  511. <h4>Declaration</h4>
  512. <div class="language">
  513. <p class="aside-title">Swift</p>
  514. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">BoolEncoding</span></code></pre>
  515. </div>
  516. </div>
  517. </section>
  518. </div>
  519. </li>
  520. </ul>
  521. </div>
  522. <div class="task-group">
  523. <div class="task-name-container">
  524. <a name="/Properties"></a>
  525. <a name="//apple_ref/swift/Section/Properties" class="dashAnchor"></a>
  526. <a href="#/Properties">
  527. <h3 class="section-name">Properties</h3>
  528. </a>
  529. </div>
  530. <ul class="item-container">
  531. <li class="item">
  532. <div>
  533. <code>
  534. <a name="/s:9Alamofire11URLEncodingV7defaultACvpZ"></a>
  535. <a name="//apple_ref/swift/Variable/default" class="dashAnchor"></a>
  536. <a class="token" href="#/s:9Alamofire11URLEncodingV7defaultACvpZ">default</a>
  537. </code>
  538. </div>
  539. <div class="height-container">
  540. <div class="pointer-container"></div>
  541. <section class="section">
  542. <div class="pointer"></div>
  543. <div class="abstract">
  544. <p>Returns a default <code>URLEncoding</code> instance with a <code>.methodDependent</code> destination.</p>
  545. </div>
  546. <div class="declaration">
  547. <h4>Declaration</h4>
  548. <div class="language">
  549. <p class="aside-title">Swift</p>
  550. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="kd">var</span> <span class="err">`</span><span class="k">default</span><span class="err">`</span><span class="p">:</span> <span class="kt">URLEncoding</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  551. </div>
  552. </div>
  553. </section>
  554. </div>
  555. </li>
  556. <li class="item">
  557. <div>
  558. <code>
  559. <a name="/s:9Alamofire11URLEncodingV11queryStringACvpZ"></a>
  560. <a name="//apple_ref/swift/Variable/queryString" class="dashAnchor"></a>
  561. <a class="token" href="#/s:9Alamofire11URLEncodingV11queryStringACvpZ">queryString</a>
  562. </code>
  563. </div>
  564. <div class="height-container">
  565. <div class="pointer-container"></div>
  566. <section class="section">
  567. <div class="pointer"></div>
  568. <div class="abstract">
  569. <p>Returns a <code>URLEncoding</code> instance with a <code>.queryString</code> destination.</p>
  570. </div>
  571. <div class="declaration">
  572. <h4>Declaration</h4>
  573. <div class="language">
  574. <p class="aside-title">Swift</p>
  575. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">var</span> <span class="nv">queryString</span><span class="p">:</span> <span class="kt">URLEncoding</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  576. </div>
  577. </div>
  578. </section>
  579. </div>
  580. </li>
  581. <li class="item">
  582. <div>
  583. <code>
  584. <a name="/s:9Alamofire11URLEncodingV8httpBodyACvpZ"></a>
  585. <a name="//apple_ref/swift/Variable/httpBody" class="dashAnchor"></a>
  586. <a class="token" href="#/s:9Alamofire11URLEncodingV8httpBodyACvpZ">httpBody</a>
  587. </code>
  588. </div>
  589. <div class="height-container">
  590. <div class="pointer-container"></div>
  591. <section class="section">
  592. <div class="pointer"></div>
  593. <div class="abstract">
  594. <p>Returns a <code>URLEncoding</code> instance with an <code>.httpBody</code> destination.</p>
  595. </div>
  596. <div class="declaration">
  597. <h4>Declaration</h4>
  598. <div class="language">
  599. <p class="aside-title">Swift</p>
  600. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">static</span> <span class="k">var</span> <span class="nv">httpBody</span><span class="p">:</span> <span class="kt">URLEncoding</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  601. </div>
  602. </div>
  603. </section>
  604. </div>
  605. </li>
  606. <li class="item">
  607. <div>
  608. <code>
  609. <a name="/s:9Alamofire11URLEncodingV11destinationAC11DestinationOvp"></a>
  610. <a name="//apple_ref/swift/Property/destination" class="dashAnchor"></a>
  611. <a class="token" href="#/s:9Alamofire11URLEncodingV11destinationAC11DestinationOvp">destination</a>
  612. </code>
  613. </div>
  614. <div class="height-container">
  615. <div class="pointer-container"></div>
  616. <section class="section">
  617. <div class="pointer"></div>
  618. <div class="abstract">
  619. <p>The destination defining where the encoded query string is to be applied to the URL request.</p>
  620. </div>
  621. <div class="declaration">
  622. <h4>Declaration</h4>
  623. <div class="language">
  624. <p class="aside-title">Swift</p>
  625. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">destination</span><span class="p">:</span> <span class="kt"><a href="../Structs/URLEncoding/Destination.html">Destination</a></span></code></pre>
  626. </div>
  627. </div>
  628. </section>
  629. </div>
  630. </li>
  631. <li class="item">
  632. <div>
  633. <code>
  634. <a name="/s:9Alamofire11URLEncodingV13arrayEncodingAC05ArrayD0Ovp"></a>
  635. <a name="//apple_ref/swift/Property/arrayEncoding" class="dashAnchor"></a>
  636. <a class="token" href="#/s:9Alamofire11URLEncodingV13arrayEncodingAC05ArrayD0Ovp">arrayEncoding</a>
  637. </code>
  638. </div>
  639. <div class="height-container">
  640. <div class="pointer-container"></div>
  641. <section class="section">
  642. <div class="pointer"></div>
  643. <div class="abstract">
  644. <p>The encoding to use for <code>Array</code> parameters.</p>
  645. </div>
  646. <div class="declaration">
  647. <h4>Declaration</h4>
  648. <div class="language">
  649. <p class="aside-title">Swift</p>
  650. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">arrayEncoding</span><span class="p">:</span> <span class="kt"><a href="../Structs/URLEncoding/ArrayEncoding.html">ArrayEncoding</a></span></code></pre>
  651. </div>
  652. </div>
  653. </section>
  654. </div>
  655. </li>
  656. <li class="item">
  657. <div>
  658. <code>
  659. <a name="/s:9Alamofire11URLEncodingV12boolEncodingAC04BoolD0Ovp"></a>
  660. <a name="//apple_ref/swift/Property/boolEncoding" class="dashAnchor"></a>
  661. <a class="token" href="#/s:9Alamofire11URLEncodingV12boolEncodingAC04BoolD0Ovp">boolEncoding</a>
  662. </code>
  663. </div>
  664. <div class="height-container">
  665. <div class="pointer-container"></div>
  666. <section class="section">
  667. <div class="pointer"></div>
  668. <div class="abstract">
  669. <p>The encoding to use for <code>Bool</code> parameters.</p>
  670. </div>
  671. <div class="declaration">
  672. <h4>Declaration</h4>
  673. <div class="language">
  674. <p class="aside-title">Swift</p>
  675. <pre class="highlight swift"><code><span class="kd">public</span> <span class="k">let</span> <span class="nv">boolEncoding</span><span class="p">:</span> <span class="kt"><a href="../Structs/URLEncoding/BoolEncoding.html">BoolEncoding</a></span></code></pre>
  676. </div>
  677. </div>
  678. </section>
  679. </div>
  680. </li>
  681. </ul>
  682. </div>
  683. <div class="task-group">
  684. <div class="task-name-container">
  685. <a name="/Initialization"></a>
  686. <a name="//apple_ref/swift/Section/Initialization" class="dashAnchor"></a>
  687. <a href="#/Initialization">
  688. <h3 class="section-name">Initialization</h3>
  689. </a>
  690. </div>
  691. <ul class="item-container">
  692. <li class="item">
  693. <div>
  694. <code>
  695. <a name="/s:9Alamofire11URLEncodingV11destination13arrayEncoding04boolE0A2C11DestinationO_AC05ArrayE0OAC04BoolE0Otcfc"></a>
  696. <a name="//apple_ref/swift/Method/init(destination:arrayEncoding:boolEncoding:)" class="dashAnchor"></a>
  697. <a class="token" href="#/s:9Alamofire11URLEncodingV11destination13arrayEncoding04boolE0A2C11DestinationO_AC05ArrayE0OAC04BoolE0Otcfc">init(destination:arrayEncoding:boolEncoding:)</a>
  698. </code>
  699. </div>
  700. <div class="height-container">
  701. <div class="pointer-container"></div>
  702. <section class="section">
  703. <div class="pointer"></div>
  704. <div class="abstract">
  705. <p>Creates a <code>URLEncoding</code> instance using the specified destination.</p>
  706. </div>
  707. <div class="declaration">
  708. <h4>Declaration</h4>
  709. <div class="language">
  710. <p class="aside-title">Swift</p>
  711. <pre class="highlight swift"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">destination</span><span class="p">:</span> <span class="kt"><a href="../Structs/URLEncoding/Destination.html">Destination</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">methodDependent</span><span class="p">,</span> <span class="nv">arrayEncoding</span><span class="p">:</span> <span class="kt"><a href="../Structs/URLEncoding/ArrayEncoding.html">ArrayEncoding</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">brackets</span><span class="p">,</span> <span class="nv">boolEncoding</span><span class="p">:</span> <span class="kt"><a href="../Structs/URLEncoding/BoolEncoding.html">BoolEncoding</a></span> <span class="o">=</span> <span class="o">.</span><span class="n">numeric</span><span class="p">)</span></code></pre>
  712. </div>
  713. </div>
  714. <div>
  715. <h4>Parameters</h4>
  716. <table class="graybox">
  717. <tbody>
  718. <tr>
  719. <td>
  720. <code>
  721. <em>destination</em>
  722. </code>
  723. </td>
  724. <td>
  725. <div>
  726. <p>The destination defining where the encoded query string is to be applied.</p>
  727. </div>
  728. </td>
  729. </tr>
  730. <tr>
  731. <td>
  732. <code>
  733. <em>arrayEncoding</em>
  734. </code>
  735. </td>
  736. <td>
  737. <div>
  738. <p>The encoding to use for <code>Array</code> parameters.</p>
  739. </div>
  740. </td>
  741. </tr>
  742. <tr>
  743. <td>
  744. <code>
  745. <em>boolEncoding</em>
  746. </code>
  747. </td>
  748. <td>
  749. <div>
  750. <p>The encoding to use for <code>Bool</code> parameters.</p>
  751. </div>
  752. </td>
  753. </tr>
  754. </tbody>
  755. </table>
  756. </div>
  757. <div>
  758. <h4>Return Value</h4>
  759. <p>The new <code>URLEncoding</code> instance.</p>
  760. </div>
  761. </section>
  762. </div>
  763. </li>
  764. </ul>
  765. </div>
  766. <div class="task-group">
  767. <div class="task-name-container">
  768. <a name="/Encoding"></a>
  769. <a name="//apple_ref/swift/Section/Encoding" class="dashAnchor"></a>
  770. <a href="#/Encoding">
  771. <h3 class="section-name">Encoding</h3>
  772. </a>
  773. </div>
  774. <ul class="item-container">
  775. <li class="item">
  776. <div>
  777. <code>
  778. <a name="/s:9Alamofire11URLEncodingV6encode_4with10Foundation10URLRequestVAA0F11Convertible_p_SDySSypGSgtKF"></a>
  779. <a name="//apple_ref/swift/Method/encode(_:with:)" class="dashAnchor"></a>
  780. <a class="token" href="#/s:9Alamofire11URLEncodingV6encode_4with10Foundation10URLRequestVAA0F11Convertible_p_SDySSypGSgtKF">encode(_:with:)</a>
  781. </code>
  782. </div>
  783. <div class="height-container">
  784. <div class="pointer-container"></div>
  785. <section class="section">
  786. <div class="pointer"></div>
  787. <div class="abstract">
  788. <p>Creates a URL request by encoding parameters and applying them onto an existing request.</p>
  789. <div class="aside aside-throws">
  790. <p class="aside-title">Throws</p>
  791. <p>An <code>Error</code> if the encoding process encounters an error.</p>
  792. </div>
  793. </div>
  794. <div class="declaration">
  795. <h4>Declaration</h4>
  796. <div class="language">
  797. <p class="aside-title">Swift</p>
  798. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">encode</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="n">with</span> <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="k">throws</span> <span class="o">-&gt;</span> <span class="kt">URLRequest</span></code></pre>
  799. </div>
  800. </div>
  801. <div>
  802. <h4>Parameters</h4>
  803. <table class="graybox">
  804. <tbody>
  805. <tr>
  806. <td>
  807. <code>
  808. <em>urlRequest</em>
  809. </code>
  810. </td>
  811. <td>
  812. <div>
  813. <p>The request to have parameters applied.</p>
  814. </div>
  815. </td>
  816. </tr>
  817. <tr>
  818. <td>
  819. <code>
  820. <em>parameters</em>
  821. </code>
  822. </td>
  823. <td>
  824. <div>
  825. <p>The parameters to apply.</p>
  826. </div>
  827. </td>
  828. </tr>
  829. </tbody>
  830. </table>
  831. </div>
  832. <div>
  833. <h4>Return Value</h4>
  834. <p>The encoded request.</p>
  835. </div>
  836. </section>
  837. </div>
  838. </li>
  839. <li class="item">
  840. <div>
  841. <code>
  842. <a name="/s:9Alamofire11URLEncodingV15queryComponents7fromKey5valueSaySS_SStGSS_yptF"></a>
  843. <a name="//apple_ref/swift/Method/queryComponents(fromKey:value:)" class="dashAnchor"></a>
  844. <a class="token" href="#/s:9Alamofire11URLEncodingV15queryComponents7fromKey5valueSaySS_SStGSS_yptF">queryComponents(fromKey:value:)</a>
  845. </code>
  846. </div>
  847. <div class="height-container">
  848. <div class="pointer-container"></div>
  849. <section class="section">
  850. <div class="pointer"></div>
  851. <div class="abstract">
  852. <p>Creates percent-escaped, URL encoded query string components from the given key-value pair using recursion.</p>
  853. </div>
  854. <div class="declaration">
  855. <h4>Declaration</h4>
  856. <div class="language">
  857. <p class="aside-title">Swift</p>
  858. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">queryComponents</span><span class="p">(</span><span class="n">fromKey</span> <span class="nv">key</span><span class="p">:</span> <span class="kt">String</span><span class="p">,</span> <span class="nv">value</span><span class="p">:</span> <span class="kt">Any</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="p">[(</span><span class="kt">String</span><span class="p">,</span> <span class="kt">String</span><span class="p">)]</span></code></pre>
  859. </div>
  860. </div>
  861. <div>
  862. <h4>Parameters</h4>
  863. <table class="graybox">
  864. <tbody>
  865. <tr>
  866. <td>
  867. <code>
  868. <em>key</em>
  869. </code>
  870. </td>
  871. <td>
  872. <div>
  873. <p>The key of the query component.</p>
  874. </div>
  875. </td>
  876. </tr>
  877. <tr>
  878. <td>
  879. <code>
  880. <em>value</em>
  881. </code>
  882. </td>
  883. <td>
  884. <div>
  885. <p>The value of the query component.</p>
  886. </div>
  887. </td>
  888. </tr>
  889. </tbody>
  890. </table>
  891. </div>
  892. <div>
  893. <h4>Return Value</h4>
  894. <p>The percent-escaped, URL encoded query string components.</p>
  895. </div>
  896. </section>
  897. </div>
  898. </li>
  899. <li class="item">
  900. <div>
  901. <code>
  902. <a name="/s:9Alamofire11URLEncodingV6escapeyS2SF"></a>
  903. <a name="//apple_ref/swift/Method/escape(_:)" class="dashAnchor"></a>
  904. <a class="token" href="#/s:9Alamofire11URLEncodingV6escapeyS2SF">escape(_:)</a>
  905. </code>
  906. </div>
  907. <div class="height-container">
  908. <div class="pointer-container"></div>
  909. <section class="section">
  910. <div class="pointer"></div>
  911. <div class="abstract">
  912. <p>Returns a percent-escaped string following RFC 3986 for a query string key or value.</p>
  913. </div>
  914. <div class="declaration">
  915. <h4>Declaration</h4>
  916. <div class="language">
  917. <p class="aside-title">Swift</p>
  918. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">escape</span><span class="p">(</span><span class="n">_</span> <span class="nv">string</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span> <span class="o">-&gt;</span> <span class="kt">String</span></code></pre>
  919. </div>
  920. </div>
  921. <div>
  922. <h4>Parameters</h4>
  923. <table class="graybox">
  924. <tbody>
  925. <tr>
  926. <td>
  927. <code>
  928. <em>string</em>
  929. </code>
  930. </td>
  931. <td>
  932. <div>
  933. <p>The string to be percent-escaped.</p>
  934. </div>
  935. </td>
  936. </tr>
  937. </tbody>
  938. </table>
  939. </div>
  940. <div>
  941. <h4>Return Value</h4>
  942. <p>The percent-escaped string.</p>
  943. </div>
  944. </section>
  945. </div>
  946. </li>
  947. </ul>
  948. </div>
  949. </div>
  950. </section>
  951. </article>
  952. </div>
  953. <section class="footer">
  954. <p>&copy; 2019 <a class="link" href="http://alamofire.org/" target="_blank" rel="external">Alamofire Software Foundation</a>. All rights reserved. (Last updated: 2019-04-23)</p>
  955. <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.9.4</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
  956. </section>
  957. </body>
  958. </div>
  959. </html>