当我提交一个附加文件的简单表格时:
<form enctype="multipart/form-data" action="http://localhost:3000/upload?upload_progress_id=12344" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="100000" />
Choose a file to upload: <input name="uploadedfile" type="file" /><br />
<input type="submit" value="Upload File" />
</form>
Run Code Online (Sandbox Code Playgroud)
它是如何在内部发送文件的?该文件是作为数据发送的HTTP主体的一部分吗?在此请求的标头中,我没有看到与文件名相关的任何内容.
我只是想知道发送文件时HTTP的内部工作原理.
如何在选择文件时获取文件的完整路径 <input type=‘file’>
<input type="file" id="fileUpload">
<script type="text/javascript">
function getFilePath(){
$('input[type=file]').change(function () {
var filePath=$('#fileUpload').val();
});
}
</script>
Run Code Online (Sandbox Code Playgroud)
但filePath var包含only name所选文件,而不是full path.
我在网上搜索过,但出于安全考虑,似乎浏览器(FF,chrome)只是给出文件名.
有没有其他方法来获取所选文件的完整路径?
我正在尝试在Chrome调试器中可视化表单数据。数据通过发送,文件从中加载并发送一些文本。像这样的东西:
<form action="url" enctype="multipart/form-data" method="post">
<input type="file" name="file"> <br>
<input type="text" name="some_text">
</form>
Run Code Online (Sandbox Code Playgroud)
如果我使用开发工具探索POST请求的标头,则看不到表单数据部分,但发现:
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryXGBFWL5ab6g5XoFN
Run Code Online (Sandbox Code Playgroud)
根据这篇文章,这是一种用于分隔数据的分隔符。但是,我看不到有关提交数据的其他信息。
如何查看有关some_textChrome调试器中归档文件的实际数据。
我正在调试一个Web应用程序,并且看到了我感兴趣的POST操作。这是一则内容类型为multipart / form-data的帖子,根据标题,其内容长度为Content-Length875。这是(Chrome 71.0。 3578.98)
但是Chrome不会显示任何Request-Payload。请参阅下面的图像。
其他具有不同Content-Type的帖子(例如text / xml)会将Request-Payload显示为一部分。
(1)是否未显示Request-Payload,因为这是多部分/表单数据,有时会是大文件(不是,只有875个字节)。
(2)在这种情况下,有什么方法可以查看请求有效载荷吗?
Request Headers
Run Code Online (Sandbox Code Playgroud)
Collapsed headers, showing no Request Payload
Run Code Online (Sandbox Code Playgroud)