欢迎来到258分享网,纯净的网络源码分享基地!

258资源分享网

全部作品
全部作品
网站源码
微信源码
素材特效
源码插件
视频教程
建站学院
热门搜索: 织梦  农业种植  农业  安全设置  官方
258资源分享 > 建站学院 > 微信开发 > 微信小程序跳坑记:uploadFile:fail与一键登录之无法识别json数据 ...

推荐下载

HTML5响应式自适应网咯设计

2020-05-12   浏览:736

高端HTML5响应式企业通用网

2020-05-06   浏览:518

html5响应式外贸网站英文版

2020-05-08   浏览:505

HTML5自适应律师工作室类网

2020-04-04   浏览:501

HTML5影视传媒文化公司类网

2020-05-12   浏览:495

微信小程序跳坑记:uploadFile:fail与一键登录之无法识别json数据 ...

发布时间:2020-12-17  

一:微信小程序一键登录之无法识别json数据

前言:
  作为一个运维人员不背锅,谁背呢!

正文:

开发人员和前端人员写好了微信小程序,然后坑出现了,安卓上打死不能一键登录。然后开始排查,

开始从数据上着手,不管是使用postman进行模拟测试数据,还是通过抓包查看数据,无任何问题,但是就是微信小程序无法判断改数据是json数据。

后来继续测试,打console.log 断点,抛数据出来查看发现 该数据 确实也存在问题,直接使用res.data 使用typeof 查看 确实为字符串,但是使用JSON.parse 却抛的微信小程序 百度都不能百度的错误, 怀疑要么就是数据问题 要么就是微信小程序内置的问题!

因为该问题只有安卓可以,ios是没问题的 不应该啊~。  

过程不在赘述,这个问题是由
 

微信小程序跳坑记:uploadFile:fail与一键登录之无法识别json数据 ...


调用了这里下载的文件所致,很神奇的原因(笔者公司使用的php)

不管是linux使用file查看 还是 vi 查看 :set fileencoding  都是没问题的 ,把以下文件内容删了 重新自己写文件  在代码贴进去 就没问题了 得已解决
 

微信小程序跳坑记:uploadFile:fail与一键登录之无法识别json数据 ...

排查的方法是 接口打断点,一直打到这几个文件出问题,就算这几个文件 就写<?php 也是有问题的

虽然具体原因不知道  但是确实这奇异的做法 解决了这个问题

最终发现原因:原来 是因为 <?php 前边有一个 <feff>

天下雪:在安卓中,还有相似的坑,参考这个:

跳坑《五十九》安卓下不解析json,request的response中出现红点

 

二:uploadFile:fail Error: unable to verify the first certificate

分享者:ranfengzheng,原文地址问题描述:

本地调试  调用上传 官方说明:
wx.uploadFile(OBJECT)

将本地资源上传到开发者服务器。如页面通过 wx.chooseImage 等接口获取到一个本地资源的临时文件路径后,可通过此接口将本地资源上传到指定服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data 。

看情况应该是支持https 但是在实际开发过程中 https  并不能使用  http 倒是可以

报错为:


然后问群里:都说很明显啊 证书错误,会翻译的人都知道吧?

但是事实上我们的接口也是使用 https 本地自己的证书也是没有问题的。故作为一个运维人员的我 苦逼的搜索资料  还有就是进行一系列测试

测试是从直接写demo 调线上接口开始调试,尽管使用线上接口依然这个错误 猜测是不是这个东西压根就没有经过什么配置  相当于被写死了的感觉~~

后来 搜索文章 某大牛说道:




原因:上传和下载,本地开发中的调试是有问题的,需要预览才能测试

案例二:

wx.uploadFile 这个方法同时 上传图片 和文字类,默认不会对返回的数据json处理。。使用 res.data=JSON.parse(res.data); 即可解决

案例三:分享者:金角大王,原文地址

前不少人在用wx.uploadFile组件时发现了各种问题,什么编码问题、网站证书问题等等,但有一个问题是没有解决的,
就是iOS的手机可以上传文件,而安卓的手机不行。我也尝试了各种办法,比如设置请求时的header 参数,检查网站服务器权限等等,
但还是无功而返。然后……解决的办法是…………………………

升级安卓手机端的微信,必须要升级到 6.5.2 版本以上!!!!
这样就和iOS版的微信版本一样了,然后就可以正确上传文件了!!!!!!

一亿只草泥马奔腾而过…………………………

所以建议大家可以用  wx.getSystemInfo 获取微信版本号判断一下是否6.5.2以上,否则提示用户升级微信。
  备注:建议升级到最新版本安卓及ios版本,最新版本查询地址: 备注:测试版本无法在上述地址内看到

本文标签

:备案管家服务帮您把复杂流程变简单,解决您在进行网站备案过程中遇到的效率低下和成功率不高的问题。个人300/2个域名,企业500/5个域名,qq1650004.