分类归档

小程序

FWQ
小程序
微信小程序封装http请求类的代码实例
本文主要介绍了关于小程序网络请求的封装的相关资料。具有很好的参考价值。下面跟着小编一起来看下吧 以前写过一篇关于微信小程序上拉加载,上拉刷新的文章,今天写的是关于小程序网络请求的封装。 在这里首先声明一个小程序文档的bug,导致大伙们在请求的时候,服务器收到不到参数的问题 示例代码: wx.request({  url: 'test.php', //仅为示例,并非真实的接口地址  data: {  x: '' ,  y: ''  },  header: {  'Content-Type': 'application/json'  },  success: function(res) {  console.log(res.data)  } }) 登录后复制 其中header 中的Content-Type,应该用小写content-type才能让服务器收到参数。让我折腾的好久,改了服务器仍然不行,原来是这个问题。参数在request payload中,服务器不能收到,使用如下转换之后 function json2Form(json) {   var str = [];   for(var p in json){   str.push(encodeURIComponent(p) + "=" + encodeURIComponent(json[p]));   }   return str.join("&");  }…
2024-11-25 阅读全文 →
FWQ
小程序
php微信公众账号开发遇到的五个坑总结
这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 菜单回复是需要处理XML文件的,我们根据微信返回的XML文件,可以得到每个微信用户相对于微信公众号的唯一标识。微信公众平台的机制简单的将就是我们自己输出固定格式的xml文件,然后微信APP负责解析,得到我们想要的信息,然后对信息统一处理。  第六坑,如果你看微信文档,那么,绝对坑死你,上图。这里的ToUserName和FromUserName一定特么的要分清楚了,记住,千万不要写反了,用户对于微信而言是A→B,那么微信对于用户就是反着来的,貌似现在应该说清楚了。 /// <summary>  /// 接收微信发送的XML消息并且解析  /// </summary>  private void ReceiveXml()  {  try  {   Stream requestStream = System.Web.HttpContext.Current.Request.InputStream;   byte[] requestByte = new byte[requestStream.Length];   requestStream.Read(requestByte, 0, (int)requestStream.Length);   string requestStr = Encoding.UTF8.GetString(requestByte);   if (!string.IsNullOrEmpty(requestStr))   {    //封装请求类   XmlDocument requestDocXml = new XmlDocument();   requestDocXml.LoadXml(requestStr);   XmlElement rootElement = requestDocXml.DocumentElement;   WxXmlModel WxXmlModel = new WxXmlModel();   if (rootElement != null)   {    WxXmlModel.ToUserName = rootElement.SelectSingleNode("ToUserName") == null ? "" : rootElement.SelectSingleNode("ToUserName").InnerText;    WxXmlModel.FromUserName = rootElement.SelectSingleNode("FromUserName") == null ? "" : rootElement.SelectSingleNode("FromUserName").InnerText;    WxXmlModel.CreateTime = rootElement.SelectSingleNode("CreateTime") == null ? "" : rootElement.SelectSingleNode("CreateTime").InnerText;    WxXmlModel.MsgType = rootElement.SelectSingleNode("MsgType") == null ? "" : rootElement.SelectSingleNode("MsgType").InnerText;    switch (WxXmlModel.MsgType)…
2024-11-25 阅读全文 →
FWQ
小程序
微信开发系之新手接入指南
微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流程是这样的,用户发送消息到微信服务器,微信服务器将接收到的消息post到用户接入时填写的url中,在url处理程序中,首先判断消息的合法性,判断成功后根据消息体的内容做相应的相应。原理很容易理解,接触过socket的可能理解起来更容易。 然而,微信的文档有的时候确实有点让人摸不着头脑,关于微信接入的文档写的确实不敢恭维啊。官方文档写的第一步是“申请消息接口”,这里是需要填写一个url的,此url用来处理微信发送的消息的,但微信把url中相关的配置写在了第二步,一不小心就把新手给坑了。下面我按照我的理解来进行解释。 首先,开发者在接入时,微信服务器将发送get请求到你填写的url上,此请求携带四个参数,分别signature(微信加密签名,signature结合了开发者填写的token参数和请求中的stamp参数、nonce参数。),timestamp(),nonce(随机数),echostr(随机字符串).用 HttpContext.Current.Request.RawUrl可以获取当前请求的原始url,如下图所示: 开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败。 加密/校验流程如下:1. 将token、timestamp、nonce三个参数进行字典序排序 2. 将三个参数字符串拼接成一个字符串进行sha1加密 3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信。 登录后复制 下面是代码实现。 登录后复制 首先,在你的处理程序中(我是新建了一个一般处理程序wx.ashx),判断当前请求的类型,因为接入时,是发送的GET请求,消息处理是发送的POST请求。如下图: 登录后复制 这里我对验证url的方法进行封装。 登录后复制 /// <summary>         /// 验证url权限, 接入服务器        /// </summary>         /// <param>         /// <returns></returns>         public static bool ValidUrl(string token)         {            string echoStr = VqiRequest.GetQueryString("echoStr");            if (CheckSignature(token))             {                if (!string.IsNullOrEmpty(echoStr))                 {                     Utils.ResponseWrite(echoStr);                    return true;                 }…
2024-11-25 阅读全文 →
FWQ
小程序
小程序怎么查看base64图片
小程序怎么查看base64图片?下面本篇文章给大家介绍一下小程序中预览base64图片的方法,希望对大家有所帮助! 一、后台传过来的图片为base64格式的,显示的话用【”data:image/PNG;base64,” + data】就可以正常显示。然后在调用微信API接口previewImage却有诸多问题,如: windows开发工具黑屏 部分安卓机型无法显示 控制台报错等 二、经过查询,找到了官方的回答。微信官方的意思是需要用url地址,不支持base64格式,以下是微信官方回答: wx.previewImage API 预览base64图片导致微信闪退? | 微信开放社区 (qq.com)https://developers.weixin.qq.com/community/develop/doc/00088c9e44c3d880597ab22b15bc00?highLine=wx.previewImage%20base64 解决方案 思路:先把base64作为临时文件存到本地,然后预览,预览结束时删除临时文件 // 获取应用实例 const app = getApp() Page({   data: {     //base64数据,由后台传过来     base64: '',     //本机的临时文件路径     localImgUrl: ''   },   onShow: function() {     // 在这里删除临时文件     var localImgUrl = this.data.localImgUrl;…
2024-11-25 阅读全文 →
FWQ
小程序
IOS微信开发支付的步骤详解
前言:下面介绍微信支付的开发流程的细节,图文并茂,你可以按照我的随笔流程过一遍代码。包你也学会了微信支付。而且支付也是面试常问的内容。 正文: 1、首先在开始使用微信支付之前,有一些东西是开发者必须要知道的,打开下面链接:   pay.weixin.qq.com/wiki/doc/api/app.php?chapter=3_1     然后可以看到下面的页面,这个就是微信支付商户平台的开发文档,很多东西是可以查阅和了解的,在开发使用微信SDK支付功能的时候,遇到了问题也可以到这找找相关须知信息:        然后,还要告诉读者,点击这个开发文档中的” 支付账户>支付账户 “,然后滚动当前页面到最下面可以看到关于APPID:        注意:这个APPID是开发中使用微信支付必须要用的东西,而这个APPID也只有商户通过在该微信支付平台注册,花个300元,填写很多相关重要信息,还要上传营业执照等必要手续,才能获取的APPID。   而商业app应用程序,在客户使用app微信消费,程序会根据这个唯一的APPID,查找到商户,然后把消费者的金额数传递到商户的账户里。      对开发者的福利:对于开发者,微信支付平台提供了测试的Demo,也在Demo源码中提供了有用的用于测试代码的APPID。这样开发者就除去了花个300元买个APPID的必要性。 2、为了读者能够更便利以及更针对性的学习这个微信SDK的使用过程,本人就建立一个普通的工程,直接在上面简易的使用微信SDK,并完成微信支付。   pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=11_1   点进去之后下载SDK,另外也要把Demo下载下来,可以带你参考学习源码的使用,也可以留着以后进一步的探究:        在新建的工程里,我们把下载的SDK拖进去,下载的SDK文件中有五个文件,那个read_me.txt可以不用留着工程里,随你喜欢,但是可以打开阅读里面的提示信息:        我们先打开read_me.txt文件,其实里面就是讲了最近几个版本的更新中解决的问题,以及使用该SDK的注意事项,红色框框起来的部分我在后面的操作中都会用上,SO这个read_me文件很重要的哦。      3、好,我们就按照read_me.txt做一下必须要做的流程:   Xcode 7版本之后需要导入一下框架和链接库:        如果是XCode…
2024-11-25 阅读全文 →
FWQ
小程序
有关争夺的课程推荐10篇
微信方面宣布,由于苹果公司规定,ios版本已经彻底了向公众平台赞赏的功能,包括二维码转账都不可以。这等于基本断绝了ios平台运营者的财路。那么,苹果方面为何要这么做呢?根据新浪科技最新报道,苹果方面已经针对此事做出回应,称赞赏功能并非是苹果逼停的,微信本可以像其他开发者一样,选择app内购方式给公众号运营者。苹果强调,app store生态对所有开发者的要求均是一样的,包括微信这种已经有8亿用户的app。无论是谁,公平原则一致,都不会开特例。这是典型的苹果式契约精神,3.1.1项自去年六月之后已经明确,除了iap方式,app中不应有任何其他提示用户付费的方式。所谓的 iap机制,实际上就是指苹果自家的内购系统至于二维码赞赏方式,一方面并不方便,而且也有安全隐患,后续被封杀也并不意外,否则微信只能被苹果下架。苹果公司的回应声明全文如下:微信可以选择提供app内购买让用户赞赏他们喜爱的公众号运 1. 简介:苹果和微信之间越来越微妙的关系,引发各种猜测。从2016年6月,苹果更新规定,直到2017年4月,微信赞赏功能正式下架,苹果和微信经历了漫长的博弈,这足以让二者之间微妙的关系演化的更加精彩。  据微信一位内部人士透露,双方在此事上的分歧,在于打赏行为是否属于购买服务。 2. 简介:Rogue Wave 收购 Zend,争夺 PHP 网页开发市场。Rogue Wave 收购 Zend,争夺 PHP 网页开发市场 近日跨平台软体开发工具商Rogue Wave在官网宣布并购Zend,而Zend所开发的Zend Framework为许多PHP开发者 3. 简介:Rogue Wave 收购 Zend,争夺 PHP 网页开发市场。Rogue…
2024-11-25 阅读全文 →
FWQ
小程序
小程序每篇中怎么样插入链接?
小程序每篇中怎么样插入链接? 步骤: 1、首先我们打开登录小程序 2、点击左侧导航栏, 3、往下拉至,点击修改 4、需要管理员扫码进入 5、添加要跳转的超链接网址。添加前先浏览器打开该网址确保能打开。确保是有效和已备案域名,且https协议开头。添加网址点击保存。 注意:配置绑定域名的网站必须添加微信下载的校验文件,如下图箭头所示,下载文件添加到网站目录里面。否则当前链接不能打开 6、小程序业务域名最多可以添加20个,一年只能修改50次。要记得哦 7、保存完毕之后。现在可以添加超链接网址了。 推荐教程:《》 以上就是小程序每篇中怎么样插入链接?的详细内容,更多请关注米云其它相关文章!
2024-11-25 阅读全文 →
FWQ
小程序
微信小程序如何使用rich-text的方法详解
这篇文章主要介绍了 微信小程序 rich-text的使用方法的相关资料,这里提供属性及方法并实现实例,帮助大家学习理解,需要的朋友可以参考下  微信小程序 rich-text的使用方法 rich-text 属性:nodes 类型:Array / String 结点列表 / HTML String 全局支持class和style属性,不支持id属性。 结点类型:type = node , name 标签名 String 是 支持部分受信任的HTML结点,  attrs 属性 Object 否 支持部分受信任的属性,遵循Pascal命名法 , …
2024-11-25 阅读全文 →
FWQ
小程序
微信公众平台开发获取用户基本信息
一、获取用户基本信息接口 在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯一的。对于不同公众号,同一用户的openid不同)。公众号可通过本接口来根据OpenID获取用户基本信息,包括昵称、头像、性别、所在城市、语言和关注时间。 获取用户基本信息 开发者可通过OpenID来获取用户基本信息。请使用https协议。 接口调用请求说明 http请求方式: GET https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN 登录后复制 参数说明 参数 是否必须 说明 access_token 是 调用接口凭证 openid 是 普通用户的标识,对当前公众号唯一 lang 否 返回国家地区语言版本,zh_CN 简体,zh_TW 繁体,en 英语 返回说明 正常情况下,微信会返回下述JSON数据包给公众号: {…
2024-11-25 阅读全文 →
FWQ
小程序
java微信开发之上传下载多媒体文件
回复、、消息都是需要media_id的,这个是需要将到微信服务器才有的。 将多媒体文件上传到微信服务器,以及从微信服务器下载文件,可以参考:http://mp.weixin.qq.com/wiki/index.php?title=上传下载多媒体文件 上传下载多媒体文件的方法还是写到WeixinUtil.java中。 代码如下: import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.security.KeyManagementException; import java.security.NoSuchAlgorithmException; import java.security.NoSuchProviderException; import java.security.SecureRandom; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.Map;   import javax.net.ssl.HttpsURLConnection;…
2024-11-25 阅读全文 →