52 lines
1.6 KiB
Markdown
52 lines
1.6 KiB
Markdown
|
---
|
||
|
c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||
|
SPDX-License-Identifier: curl
|
||
|
Long: data-urlencode
|
||
|
Arg: <data>
|
||
|
Help: HTTP POST data URL encoded
|
||
|
Protocols: HTTP
|
||
|
Added: 7.18.0
|
||
|
Category: http post upload
|
||
|
Multi: append
|
||
|
See-also:
|
||
|
- data
|
||
|
- data-raw
|
||
|
Example:
|
||
|
- --data-urlencode name=val $URL
|
||
|
- --data-urlencode =encodethis $URL
|
||
|
- --data-urlencode name@file $URL
|
||
|
- --data-urlencode @fileonly $URL
|
||
|
---
|
||
|
|
||
|
# `--data-urlencode`
|
||
|
|
||
|
This posts data, similar to the other --data options with the exception
|
||
|
that this performs URL-encoding.
|
||
|
|
||
|
To be CGI-compliant, the \<data\> part should begin with a *name* followed by
|
||
|
a separator and a content specification. The \<data\> part can be passed to
|
||
|
curl using one of the following syntaxes:
|
||
|
|
||
|
## content
|
||
|
This makes curl URL-encode the content and pass that on. Just be careful
|
||
|
so that the content does not contain any = or @ symbols, as that makes
|
||
|
the syntax match one of the other cases below!
|
||
|
|
||
|
## =content
|
||
|
This makes curl URL-encode the content and pass that on. The preceding =
|
||
|
symbol is not included in the data.
|
||
|
|
||
|
## name=content
|
||
|
This makes curl URL-encode the content part and pass that on. Note that
|
||
|
the name part is expected to be URL-encoded already.
|
||
|
|
||
|
## @filename
|
||
|
This makes curl load data from the given file (including any newlines),
|
||
|
URL-encode that data and pass it on in the POST.
|
||
|
|
||
|
## name@filename
|
||
|
This makes curl load data from the given file (including any newlines),
|
||
|
URL-encode that data and pass it on in the POST. The name part gets an equal
|
||
|
sign appended, resulting in *name=urlencoded-file-content*. Note that the
|
||
|
name is expected to be URL-encoded already.
|