layui图片上传错误,提示接口请求异常

新手上路,请多包涵

1.使用的是layui的图片上传,限制图片上传时的最大是5M。
2.上传图片时,选择了一张大小和占用空间都是5M的图片

 正常的图片或者文件的  大小和占用空间是不一样的,大小一般都会比占用空间小。

下面是不正常的图片
image.png

下面是正常的图片

image.png
4.出现的问题:

上传正常的图片,能够上传成功。
上传不正常的图片,提示 接口请求异常,但是后端并没有接收到这个请求。



阅读 4.3k
2 个回答

不要看这个,上传过后的 file对象里 应该有返回的图片大小信息的,用那个去对比下这两个图片的大小是不是超出了你得限制。

你没有说你的后端架构和配置,那就猜测下.

你搞了一张刚好 5MB 的图片上传是失败(你也没说状态码是啥).但是稍小于 5MB 的是上传成功的.

假设你后端用了 nginx + php 做服务.那么一般和上传相关的,nginx 有 client_max_body_size, PHP 有 post_max_sizeupload_max_filesize

但是请注意, nginx 的 client_max_body_size 和 php 的 post_max_size 这个都是限制的请求体的大小,而你上传图片的时候,一般使用 multipart/form-data,然后 request-body里图片前后会使用 boundary加上一个随机 id 来做分割,实际上,你的请求的 content-length是比你的图片本身更大一些的. 如果你的配置是我说的这样做的,那么你客户端上传一个正好5M的图片,算上header,在请求到达 nginx 这块,nginx 就发现超出限制了,就直接返回 413 错误,不往 php 转发了. post_max_size也一样,upload_max_filesize不太确定,但是应该不一样.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题