起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1629|回复: 8

[处理中3] attachmentSimple上传时获得相关信息

[复制链接]

15

主题

79

帖子

278

积分

中级会员

Rank: 3Rank: 3

积分
278
发表于 2018-9-14 09:54:48 | 显示全部楼层 |阅读模式
本帖最后由 ef61 于 2018-9-14 11:03 编辑

S)[6OD]EJD6B3DGQ5OA5CC2.png 请问这个写在哪里;
想要得到图片的base64传给接口,和给照片加上拍摄地点的水印,找到的资料不是想要的,来求助。


91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2018-9-14 13:44:52 | 显示全部楼层
model的onload事件中就可以执行
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

15

主题

79

帖子

278

积分

中级会员

Rank: 3Rank: 3

积分
278
 楼主| 发表于 2018-9-17 09:19:48 | 显示全部楼层
jishuang 发表于 2018-9-14 13:44
model的onload事件中就可以执行

有没有给照片加上当前拍摄地点水印的方法
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2018-9-17 15:06:21 | 显示全部楼层
平台没有提供,可以都网上查找h5中怎么实现的
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

15

主题

79

帖子

278

积分

中级会员

Rank: 3Rank: 3

积分
278
 楼主| 发表于 2018-9-18 15:46:23 | 显示全部楼层
jishuang 发表于 2018-9-17 15:06
平台没有提供,可以都网上查找h5中怎么实现的

图片转化成base64传输时会因为过长而被截取吗,传给接口的时候发现只传过去了一部分。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2018-9-18 16:00:40 | 显示全部楼层
具体怎么传输的?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

15

主题

79

帖子

278

积分

中级会员

Rank: 3Rank: 3

积分
278
 楼主| 发表于 2018-9-20 16:32:47 | 显示全部楼层
jishuang 发表于 2018-9-18 16:00
具体怎么传输的?
  1. Model.prototype.modelLoad = function(event) {
  2.         var self = this;
  3.         var appKey = "*";
  4.         var appSecret = "*";
  5.         var timeStamp = justep.Date.toString(new Date(), 'yyyy-MM-dd hh:mm:ss')// 时间
  6.         //alert(timeStamp);
  7.         var signature = hex_md5(appSecret + appKey + timeStamp);// md5签名
  8.         
  9.         
  10.         var uploader = this.comp("attachmentSimple1").uploader;
  11.         uploader.on('onFileSelected', function(event) {
  12.             var file = event.file;
  13.             if (window.FileReader) {
  14.                 var reader = new FileReader();
  15.                 reader.readAsDataURL(file);
  16.                 // 监听文件读取结束后事件
  17.                 reader.onloadend = function(e) {
  18.                     base64String = e.target.result; // e.target.result就是最后的路径地址
  19.                     base64String = base64String.replace("data:image/jpeg;base64,", "");
  20.                     //console.log(base64String);
  21.                     
  22.                     var params = new biz.Request.ActionParam();
  23.                     params.setParam("appKey", appKey);
  24.                     params.setParam("baseStr", base64String);
  25.                     params.setParam("timeStamp", timeStamp);
  26.                     params.setParam("signature", signature);

  27.                     debugger;

  28.                     biz.Request.sendBizRequest({
  29.                             contentType : "application/json",
  30.                             dataType : "application/json",
  31.                             action : "idCardFront",
  32.                             context : self.getContext(),
  33.                             parameters : params,
  34.                             callback:function(result){
  35.                             console.log(result.response);
  36.                             //alert(result.response.score)

  37.                             }
  38.                     });                                    
  39.                 };

  40.             }
  41.         });

  42.     };
复制代码
  1. public static Map idCardFront(String appKey,String baseStr,String timeStamp,String signature){
  2.                 String reportUrl = null;
  3.                 String score = null;
  4.                 HashMap map2 = new HashMap();
  5.                 String url = *;
  6.                 Map<Object, Object> params = new HashMap<Object, Object>();//调用sendPost方法时传入外网接口地址携带的参数
  7.                 params.put("appKey", appKey);
  8.                 params.put("baseStr", baseStr);
  9.                 System.out.print(baseStr);
  10.                 params.put("timeStamp", timeStamp);
  11.                 params.put("signature", signature);
  12.                
  13.                 String result = sendPost(url,params);
  14.                 HashMap map=(HashMap)JSONObject.parseObject(result,HashMap.class);
  15. //                String obj= map.get("data").toString();
  16. //                map2=(HashMap)JSONObject.parseObject(obj,HashMap.class);
  17.                         

  18.                 return map;
  19.         }
复制代码
后台显示的值都是完整的


回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2018-9-21 14:02:33 | 显示全部楼层
后台显示的值都是完整的是什么意思?不是前端获取后传过后端,后端获取不完整的吗?
后端显示的值是完整的具体指的什么地方的值是完整的?


如果是传到后端的值不完整,把值放到list或者map中,action的参数设置为list或者map的方式传参可以,字符串不确定是否跟长度有关
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

15

主题

79

帖子

278

积分

中级会员

Rank: 3Rank: 3

积分
278
 楼主| 发表于 2018-9-21 15:54:06 | 显示全部楼层
jishuang 发表于 2018-9-21 14:02
后台显示的值都是完整的是什么意思?不是前端获取后传过后端,后端获取不完整的吗?
后端显示的值是完整的 ...

就是base64String的值长度是完整的,但接口服务器那得到的值不是完整的。
用接口给的测试网站测试时没出问题,所以想是不是在传给服务器的时候数据丢失。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-3 15:56 , Processed in 0.112887 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表