zoukankan      html  css  js  c++  java
  • JSSDK调用微信原生的功能上传图片保存到自己的服务器中

    第一件事首先是微信的选择图片功能,就是微信发朋友圈选择图片的时候那个界面

    //调用微信拍照功能
                                        wx.chooseImage({
                                            count: 1, // 默认9
                                            sizeType: ['original', 'compressed'], //原图-压缩图
                                            sourceType: ['album', 'camera'], //指定来源是相册还是相机
                                            success: function (res) {
                                                let localIds = res.localIds;
                                                syncUpload(localIds);
                                            }
                                        });

    其中syncUpload函数功能为上传图片到微信服务器中

    var syncUpload = function (localIds) {
                    var localId = localIds.pop();
                    //上传图片
                    wx.uploadImage({
                        localId: localId,
                        isShowProgressTips: 1,
                        success: function (res) {
                            // 返回图片的服务器端ID
                            var serverId = res.serverId; 
                            $.ajax({
                                url: "",
                                data: { media_id: serverId },
                                success: function (data) {
                                    alert("你的图片路径地址是:" + data);
                                }, erro: function (erro) { alert(erro); }
                            })
                        }
                    });
                };

    中间空着的url地址则是自己的后台处理这个事件的地址

    我使用的是C# ,处理代码如下

     if (Request["media_id"]!=null)
        {
          string media_id = Request["media_id"].ToString();
          string url = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token="+ wxHelper2.access_token+ "&media_id="+ media_id;     
          var result = new WebClient();
          result.DownloadFile(url, Server.MapPath("/upload/WxImg_" + media_id+".jpg"));
          string savePath = Server.MapPath("/upload/WxImg_" + media_id + ".jpg");
          Response.Write(savePath);
          Response.End();
        }

    这样就可以保存了

  • 相关阅读:
    【转】测试驱动开发
    【转】什么是“脚本语言”
    【转】“解决问题”与“消灭问题”
    【转】程序语言的常见设计错误(1)
    【转】解密“设计模式”
    【转】所谓软件工程
    【转】清华梦的粉碎
    算法知识目录整理
    买书不读是一种什么病?
    Linux 下socket通信终极指南(附TCP、UDP完整代码)
  • 原文地址:https://www.cnblogs.com/ncellit/p/10177938.html
Copyright © 2011-2022 走看看