NightsWatcher
NightsWatcher
  • 发布:2019-12-24 13:23
  • 更新:2020-04-19 19:20
  • 阅读:1461

ios ajax + formdata提交文字+ 图片数据无法获取返回值

分类:HTML5+

提交到后台,后台处理完数据并且返回了数据
1.用postMan测试能获取数据

  1. 用Android手机测试能获取数据
  2. Fiddler抓包也能获取数据
    就是在Ios调试中无法获取数据!!!!!!
    var dataObj = formDataObj = new FormData();  
    formDataObj.append("name","AAA");  
    $.ajax({  
                    url:hosturl+'phoneAdd2.action',  
                    type:'POST',  
                    data:dataObj,  
                    cache:false,        //不缓存  
                    processData:false,  //不处理数据  
                    contentType:false,  //不设置内容类型  
                    async:true,  
                    timeout : 50000,  
                    success:function (data) {  
                        console.log("返回成功:" + JSON.stringify(data));  
                    } ,  
                    error:function(err){  
                        console.log("返回失败:" + JSON.stringify(err));  
                    }  
                })
2019-12-24 13:23 负责人:无 分享
已邀请:
舒瑶

舒瑶

解决了吗?我也碰到这样的问题

7***@qq.com

7***@qq.com

大兄弟,问题有解决吗

NightsWatcher

NightsWatcher (作者)

已解决,是由于没有配置ios的UIWebView,在manifest文件中配置即可
https://ask.dcloud.net.cn/article/36348#uiwebview

7***@qq.com

7***@qq.com

楼主,你这样切换UIWebview并没解决WKWebview上存在的问题,如果用WKWebview的话,上传文件必须要用原生的上传方式,formData在WKWebview上会跨域,服务器接受不到值

  • NightsWatcher (作者)

    其实我也特别想知道官方如何解决WKWebview跨域问题,目前5+的Uploader在跨域的情况下只能上传一个文件,这明显是不能满足需求的。

    2020-04-27 14:20

  • 7***@qq.com

    回复 NightsWatcher: Uploader可以上传多个文件,但是不能是同一个key,目前最好在后台解决,自定义上传文件的key命名规则,在服务器自己自定义判断规则,没办法了,我现在就是这么弄的

    2020-04-27 16:20

  • NightsWatcher (作者)

    回复 7***@qq.com: 兄弟说的不能是同一个key,可是这样添加的文件?

    task.addFile( "_www/a.doc", {key:"testdoc"} );

    task.addFile( "_www/a.png", {key:"ping1"} );

    2020-04-27 17:31

  • 7***@qq.com

    回复 NightsWatcher: 对,key不一样就行,服务器可以获取到这些文件

    2020-04-27 21:15

该问题目前已经被锁定, 无法添加新回复