41 lines
1.6 KiB
HTML
41 lines
1.6 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<title>example</title>
|
|
<meta charset="utf-8" />
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<style>
|
|
#container { margin-right: auto; margin-left: auto; max-width: 480px; }
|
|
#info { background: #e0f0f0; border-radius: .5em; padding: 2em; }
|
|
#wrapper { margin-top: 1em; }
|
|
form * { margin: 0.2em 0; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<div id="container">
|
|
<div id="info">
|
|
Mongoose always buffers a full HTTP message before invoking
|
|
MG_EV_HTTP_MSG event. Big POST request require of lot
|
|
of RAM to buffer everything. Therefore, standard form uploads
|
|
should be used only when Mongoose runs on a system with lots of RAM.
|
|
Otherwise, please see <code>file-updload</code> example, how
|
|
a big file could be uploaded to a device with little RAM.
|
|
<br/><br/>
|
|
In this example, a standard HTML form upload is used, which uses
|
|
<code>multipart-form-data</code> encoding with
|
|
several variables and file upload. On a server side, a
|
|
<code>mg_http_next_multipart()</code> API is used to iterate over
|
|
all submitted form elements and print their payload.
|
|
</div>
|
|
<div id="wrapper">
|
|
<form action="/upload" method="post" enctype="multipart/form-data">
|
|
<input type="text" name="field1" value="type some text here" /> <br/>
|
|
<input type="file" name="file1" /> </br>
|
|
<button type="submit">submit form</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|