man wget
nói:
Chỉ có một trong --Quảng cáo sau dữ liệu và --Quảng cáo sau tập tin nên được chỉ định.
Đoạn đầy đủ là:
--post-data=string
--post-file=file
Use POST as the method for all HTTP requests and send the specified data
in the request body. --post-data sends string as data, whereas
--post-file sends the contents of file. Other than that, they work in
exactly the same way. In particular, they both expect content of the
form "key1=value1&key2=value2", with percent-encoding for special
characters; the only difference is that one expects its content as a
command-line parameter and the other accepts its content from a file. In
particular, --post-file is not for transmitting files as form
attachments: those must appear as "key=value" data (with appropriate
percent-coding) just like everything else. Wget does not currently
support "multipart/form-data" for transmitting POST data; only
"application/x-www-form-urlencoded". Only one of --post-data and
--post-file should be specified.
Đặc biệt nó nói:
--Quảng cáo sau tập tin không phải là để truyền các file đính kèm dạng: những phải xuất hiện như "chìa khóa = value "data
Chỉnh sửa: Bạn phải hiểu nguyên tắc dữ liệu "khóa = giá trị". Trong yêu cầu POST, như trong yêu cầu GET, bạn phải chỉ định dữ liệu bằng cách sử dụng các khóa và giá trị. Bằng cách này, máy chủ sẽ có thể nhận được nhiều thông tin với các tên cụ thể. Nó tương tự với các biến.
Do đó, bạn không thể chỉ gửi mã thông báo ma thuật cho máy chủ, bạn cũng cần chỉ định tên của khóa. Nếu khóa là "mã thông báo", thì nó phải là token=YOUR_TOKEN
.
Ngoài ra, bạn nên cân nhắc sử dụng curl nếu có thể vì việc gửi tệp bằng cách sử dụng nó dễ dàng hơn. Có rất nhiều ví dụ trên Internet cho điều đó.
Nguồn
2013-07-17 12:36:29
Tôi làm cách nào để gửi mã thông báo xác thực trong trường hợp này? – Dady
Nếu đó là một dạng html cơ bản, bạn sẽ đặt tên cho đầu vào có chứa mã thông báo như thế nào? Vì đó phải là: token = AUTH_1624582364932749DFHDD –
@Dady: Sử dụng 'curl'? – Hasturkun