最近在更新迭代之前做的web版项目,在手机端测试上头像和上传附件为图片格式的过程中,发现在ios不同版本的上传图片的功能实现效果不同。比如:ios13版本上传图片就可以正常上传,但是ios2、ios14、ios15浏览上传和拍照上传图片就无法成功上传(因为测试机型只有这几个版本就只测了这几个版本),让后台断点查看是的问题是接口是正常请求的但是进接口却拿不到文件内容,上传文件内容是空的,当时真的是被这个兼容性给难住了,一直在百度找方法,改代码,起初是看网上说的是header配置不对。

我改的第一种方式:
经过一番百度总算找到了答案,
是需要设置 withCredentials:true , 表示跨域请求时是否需要使用凭证。但是改完测试发现根本没啥用,并且问题应该也不是跨域请求。(不符合)

第二种方式:
添加请求头
var formData = new FormData($("#myForm"));
formData.append(“upfile”, document.getElementById(‘file’).files[0]);
formData.append(“aaa”, 111);//添加其他需要上传的数据,这里可以用JSON.stringify转,涉及file上传的切记不要转;
let config = {
headers:{‘Content-Type’:‘multipart/form-data’}
}; //添加请求头
但是这个方法添加完了以后也没有任何作用

最后看了一下整体的代码,发现共同点是上传和拍照请求接口之前都调用了压缩方法,下面就从压缩方法入手。


最后发现问题出在压缩代码时转码过程中在ios版本上不兼容
用vue 移动端上传图片在ios 手机上 图片转换base64 在转换file 文件类型 后台接受不到,最后将 file 改为 Blob 的 格式上传,就上传成功了。
问题解决了。
ok!拜拜!

在ios不同版本下vue2.0浏览上传和拍照上传图片压缩兼容问题相关推荐

  1. Vue2.0史上最全入坑教程(中)—— 脚手架代码详解

    2019独角兽企业重金招聘Python工程师标准>>> 书接上文我们说道,如何利用脚手架(vue-cli)构建一个vue项目,本回书我们一起来学习分析下代码. 回顾下创建后的项目目录 ...

  2. 「VUE架构」VUE2.0 图片上传功能(移动端)

    本文主要介绍VUE2.0图片上传功能的实现.原理是通过js控制和input标签的方式完成这一效果,无需加载其他组件. 效果图如下: 1.DOM代码 1.1input标签 由于我们是通过input标签的 ...

  3. Unity iOS 之 [iOS]App上架流程[利用Archive进行上传]

    [iOS]App上架流程[利用Archive进行上传] 准备: 1. 一个开发者账号(需要交过钱的,?好黑) 2. 一个做完的项目 检查: 1. 你的Xcode必须是正式版,不可以是beta版本(不能 ...

  4. iOS 利用AFNetworking实现大文件分片上传

    概述 一说到文件上传,想必大家都并不陌生,更何况是利用AFNetworking(PS:后期统称AF)来做,那更是小菜一碟.比如开发中常见的场景:头像上传,九宫格图片上传...等等,这些场景无一不使用到 ...

  5. Android 拍照以及相册中选择(适配高版本)————上传多张照片之压缩处理、在线预览可伸缩放大(二)

    ______ Introduction ______ 前言 上一篇文章刚给大家总结完,关于上传头像的功能.此文章所述 主要是关于上传头像的具体流程以及如何对照片做裁剪处理,回调给控件显示:当然重中之重 ...

  6. java实现excel文件上传_java相关:SpringMVC下实现Excel文件上传下载

    java相关:SpringMVC下实现Excel文件上传下载 发布于 2020-6-21| 复制链接 摘记: 在实际应用中,经常会遇到上传Excel或者下载Excel的情况,比如导入数据.下载统计数据 ...

  7. eclipse下使用git插件上传代码至github

    eclipse下使用git插件上传代码至github 1.eclipse下安装git 正常情况下,eclipse 是自带 git 插件的,那么即可跳至步骤1的最后一小步,配置 git . 如果十分悲剧 ...

  8. linux下github上传文件,linux下将本地文件上传到github中?

    今天编写一份Python基础代码,经过Linux上传到github上,遇到点问题,已经解决 1.首先sudo su 进入root 用户 2.ls 检查出当前文件下有什么文件 3. cd 进入你将要上传 ...

  9. win10下php + apache客户端上传文件

    win10下php + apache客户端上传文件 1.apache配置1 //去掉以下行首#,加载apache相关模块,启用php LoadModule actions_module modules ...

最新文章

  1. 黄铁军:沉迷于寻求通用智能理论,将是阻碍 AI 发展的最大障碍 | Yann LeCun 自传《科学之路》序...
  2. 【CODEVS2776】寻找代表元
  3. RedHat下建立群集
  4. ODBC的多线程应用
  5. VSCode打造成为开发神器-插件篇
  6. Replace Method with Method Object(以函数对象取代函数)
  7. python函数式编程 pdf-Python函数式编程指南(二):从函数开始
  8. java 除以2_Java最快速的算出乘2 和除2的结果
  9. 【转】做一名开源社区的扫地僧 (上)
  10. 华三 h3c 交换机链路聚合
  11. 使用spreadjs vue版本
  12. radio单选框操作
  13. 一起读论文 | 文本分类任务的BERT微调方法论
  14. 二 TreeGrid的绑定
  15. s71500技术手册_SIMATIC S7-1500 PLC用户手册
  16. Qt QSet 详解:从底层原理到高级用法
  17. 计算机信息化教育的意义,论信息技术对于教育的重要性
  18. 微信小程序:紫色特别舒服的UI趣味测试微信小程序
  19. tophat2安装和问题解决
  20. 小小粉刷匠(区间 dp)

热门文章

  1. Arcgis更换布局模板_Typecho 主题更换及优秀主题推荐
  2. Linux内核第一宏:container_of
  3. CentOS 下载 安装桌面
  4. Serializable简单介绍
  5. 深度:12个行业热点复盘+1个核心盈利指标+6个典型创新案例+4个商业机会展望
  6. mitmproxy 入门安装
  7. 使用rewire模块测试私有方法
  8. 阿米洛键盘VB87MN
  9. 分享公众号预约怎么做_教你实现微信公众号预约制作步骤的方法
  10. 分析java进程假死