javascript - 是否可以使用 HTTP GET 上传图像
问题描述
我一直在使用以下代码将图像上传到服务器。是否可以将其更改为使用对象而不是表单数据并使用 GET 而不是 POST 传递文件数据。
var uploadfileinfo = document.getElementById("upload-file-info").value;
var file_data = $('#a_imgfile').prop('files')[0];
var a_imgfile = document.getElementById("a_imgfile");
var form_data = new FormData();
form_data.append('file', file_data);
$.ajax({
url: 'upload.php',
dataType: 'text',
cache: false,
async: false,
contentType: false,
processData: false,
data: form_data,
type: 'post',
success: function (response) {
alert(response);
},
error: function(err) {
alert(err);
}
});
解决方案
浏览器文件上传将发送表单多部分内容类型,您不能在 GET 请求中发送内容类型
https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST
如果您正在寻找一些解决方法,您可以使用一些 base64 编码器并将您的图像传递给 url 查询参数
推荐阅读
- lua - 使用 make 和 luarocks 在 lua 中安装 CJSON 失败
- codeigniter - sess_destroy() 的注销会话不起作用
- sql - Postgresql 中的 hash(#) 运算符有什么作用
- django - 从 Django API 检索数据并将其存储在数据库中
- python - 熊猫正则表达式,用字符替换组
- database - 如何从一个 Postgres 实例克隆整个数据库,成为托管在不同实例上的数据库的一部分?
- .net - 输出的 JSON 文件重复数组名称(VB.NET、Newtonsoft.JSON)
- symfony - Sylius - 全局分页参数
- python - 使用python从站点中提取文本
- java - 如何使用 java 读取来自 kotlin 类的回调(Android)