微信公众账公众号怎么转发别人的平台的微信链接(不是复制那种,一键转发的)

微信公众平台开发教程(二) 基本原理及消息接口 - 停留的风 - 博客园
posts - 214, comments - 1141, trackbacks - 5, articles - 27
微信公众平台开发教程(二) 基本原理及消息接口
一、基本原理
在开始做之前,大家可能对这个很感兴趣,但是又比较茫然。是不是很复杂?很难学啊?
其实恰恰相反,很简单。为了打消大家的顾虑,先简单介绍了微信公众平台的基本原理。
微信服务器就相当于一个转发服务器,终端(手机、Pad等)发起请求至微信服务器,微信服务器,然后将请求转发给自定义服务(这就里就是我们的具体实现)。
服务处理完毕,然后挥发给微信服务器,微信服务器再将具体响应回复到终端。
通信协议为:HTTP
数据格式为:XML
具体的流程如下图所示:
其实,我们需要做的事情,就是对HTTP请求,做出响应。
具体的请求内容,我们按照特定的XML格式去解析,处理完毕后,也要按照特定的XML格式返回。
我们只需要一个简单的实现HttpHandler即可。
当然,微信平台还能实现更加复杂的业务,比如微信可以作为内嵌的浏览器,我们可以通过微信的链接,打开htm界面,然后实现自己的逻辑。&
二、消息接口(官方文档)
点击,填写网址url和token,其中token可由开发者可以任意填写,用作生成签名。
公众平台用户提交信息后,微信服务器将发送GET请求到填写的URL上,并且带上四个参数:
微信加密签名
随机字符串
开发者通过检验signature对请求进行校验(下面有校验方式)。若确认此次GET请求来自微信服务器,请原样返回echostr参数内容,则接入生效,否则接入失败。
signature结合了开发者填写的token参数和请求中的timestamp参数、nonce参数。
加密/校验流程:
1. 将token、timestamp、nonce三个参数进行字典序排序
2. 将三个参数字符串拼接成一个字符串进行sha1加密
3. 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信
当普通微信用户向公众账号发消息时,微信服务器将POST该消息到填写的URL上。结构如下:
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[text]]&&/MsgType&
&Content&&![CDATA[this is a test]]&&/Content&
&MsgId&3456&/MsgId&
ToUserName
开发者微信号
FromUserName
发送方帐号(一个OpenID)
CreateTime
消息创建时间 (整型)
文本消息内容
消息id,64位整型
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[image]]&&/MsgType&
&PicUrl&&![CDATA[this is a url]]&&/PicUrl&
&MsgId&3456&/MsgId&
ToUserName
开发者微信号
FromUserName
发送方帐号(一个OpenID)
CreateTime
消息创建时间 (整型)
消息id,64位整型
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[location]]&&/MsgType&
&Location_X&23.134521&/Location_X&
&Location_Y&113.358803&/Location_Y&
&Scale&20&/Scale&
&Label&&![CDATA[位置信息]]&&/Label&
&MsgId&3456&/MsgId&
ToUserName
开发者微信号
FromUserName
发送方帐号(一个OpenID)
CreateTime
消息创建时间 (整型)
Location_X
地理位置纬度
Location_Y
地理位置经度
地图缩放大小
地理位置信息
消息id,64位整型
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[link]]&&/MsgType&
&Title&&![CDATA[公众平台官网链接]]&&/Title&
&Description&&![CDATA[公众平台官网链接]]&&/Description&
&Url&&![CDATA[url]]&&/Url&
&MsgId&3456&/MsgId&
ToUserName
接收方微信号
FromUserName
发送方微信号,若为普通用户,则是一个OpenID
CreateTime
消息创建时间
消息类型,link
Description
消息id,64位整型
事件推送只支持微信4.5版本,目前开启自定义菜单接口事件推送、关注与取消关注事件推送。其余功能即将开放,敬请期待。
&xml&&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[FromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[event]]&&/MsgType&
&Event&&![CDATA[EVENT]]&&/Event&
&EventKey&&![CDATA[EVENTKEY]]&&/EventKey&
ToUserName
接收方微信号
FromUserName
发送方微信号,若为普通用户,则是一个OpenID
CreateTime
消息创建时间
消息类型,event
事件类型,subscribe(订阅)、unsubscribe(取消订阅)、CLICK(自定义菜单点击事件)
事件KEY值,与自定义菜单接口中KEY值对应
对于每一个POST请求,开发者在响应包中返回特定xml结构,对该消息进行响应(现支持回复文本、图文、语音、视频、音乐)。
微信服务器在五秒内收不到响应会断掉连接。
回复xml结构如下:
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[text]]&&/MsgType&
&Content&&![CDATA[content]]&&/Content&
ToUserName
接收方帐号(收到的OpenID)
FromUserName
开发者微信号
CreateTime
消息创建时间
回复的消息内容,长度不超过2048字节
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[music]]&&/MsgType&
&Title&&![CDATA[TITLE]]&&/Title&
&Description&&![CDATA[DESCRIPTION]]&&/Description&
&MusicUrl&&![CDATA[MUSIC_Url]]&&/MusicUrl&
&HQMusicUrl&&![CDATA[HQ_MUSIC_Url]]&&/HQMusicUrl&
ToUserName
接收方帐号(收到的OpenID)
FromUserName
开发者微信号
CreateTime
消息创建时间
HQMusicUrl
高质量音乐链接,WIFI环境优先使用该链接播放音乐
&ToUserName&&![CDATA[toUser]]&&/ToUserName&
&FromUserName&&![CDATA[fromUser]]&&/FromUserName&
&CreateTime&&/CreateTime&
&MsgType&&![CDATA[news]]&&/MsgType&
&ArticleCount&2&/ArticleCount&
&Articles&
&Title&&![CDATA[title1]]&&/Title&
&Description&&![CDATA[description1]]&&/Description&
&PicUrl&&![CDATA[picurl]]&&/PicUrl&
&Url&&![CDATA[url]]&&/Url&
&Title&&![CDATA[title]]&&/Title&
&Description&&![CDATA[description]]&&/Description&
&PicUrl&&![CDATA[picurl]]&&/PicUrl&
&Url&&![CDATA[url]]&&/Url&
&/Articles&
ToUserName
接收方帐号(收到的OpenID)
FromUserName
开发者微信号
CreateTime
消息创建时间
ArticleCount
图文消息个数,限制为10条以内
多条图文消息信息,默认第一个item为大图
图文消息标题
Description
图文消息描述
图片链接,支持JPG、PNG格式,较好的效果为大图640*320,小图80*80。
点击图文消息跳转链接
官方接口文档:
1.用户OpenID对一个公众号是固定唯一的串
2.请使用80端口
尽请关注:后续我们将全面讲解具体的开发过程。
三、消息类图用心创造滤镜
扫码下载App
汇聚2000万达人的兴趣社区下载即送20张免费照片冲印
扫码下载App
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
此网名为俺姓之谐音。据说共工氏姓姜,是炎帝的后代,是神农氏以后,为农业做过重要贡献的人。最有名气的故事“共工怒触不周山”。俺现为“中国工业摄影协会会员”。
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
本文转载自涌馨高尔夫
& & & &&& &&
阅读(49516)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
在LOFTER的更多文章
loftPermalink:'',
id:'fks_',
blogTitle:'微信教程:如何用微信公众平台推送微视?',
blogAbstract:'\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n& &
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}微信很火,微信推出的公众平台也吸引了一部分市场宣传推广团队,像冷笑话大全这种微博养粉大户在微信的公众平台也是异常火爆。
因工作需求,最近为我们的市场部做了几个微信公共平台下的页面,其中涉及微信公众账号的友情链接,转发一篇文章到微信朋友圈,判断是否转发成功的回调机制,判断是否成功关注微信帐号等的前端代码,我也是通过分析冷笑话大全的页面找到的方法,也google过,但没找到微信官方有公布过相关文档,所以就把自己知道的拿来分享一下。
微信内嵌浏览器:
微信内嵌浏览器有一个私有JS 对象:WeixinJSBridge,通过操作这个对象的相关方法可以实现转发链接到微信朋友圈,和判断一个微信号的关注状态,比如在进行转发抽奖的活动时,判断是否转发成功和是否关注成功会很有必要。
function toWexinFriends()
{ WeixinJSBridge.invoke('shareTimeline',{ "img_url": "",&
"link": "",
"desc": "微时代为您搜罗最新最尖端的微信资讯。内容包括微信公众平台开发、微信营销方案策略、微信操作指南,好玩有趣的微信公众账号导航、
微信游戏攻略、微信最新版本,最新功能等更多更全面的微信资讯信息。", "title": "微时代资讯网"
function(res)
WeixinJSBridge.log(res.err_msg); if(res.err_msg == 'share_timeline:confirm'){
} function addFirend()
WeixinJSBridge.invoke("addContact", {webtype: "1",username: 'gh_122a2ee67fae'}, function(e) {
WeixinJSBridge.log(e.err_msg);
if(e.err_msg == 'add_contact:added' || e.err_msg == 'add_contact:ok'){
以上都需要在微信内嵌浏览器内才能被识别,通过判断WeixinJSBridge对象是否存在,可以知道是否在微信内浏览的页面。
微信内嵌浏览器还可以识别:
此种类型的链接,此链接在微信内会链接到一个公共帐号的介绍界面。&
外部浏览器可以使用:
此种类型的链接在手机的外部浏览器也会被自动识别并跳转到微信,但会进行条码扫描,体验不是很好。
相关热词搜索:
上一篇:下一篇:微信公众平台怎么转发别人的文章?_百度知道
微信公众平台怎么转发别人的文章?
我问的是公众平台啊,求知道的详细解说一下,为什么我复制粘贴上后文章字上还有白色。
我有更好的答案
首先复制别人的微信内容页网址到电脑上!然后用电脑把内容复制 粘贴到你的微信公众平台编辑栏 加上你的LOGO 就OK
清除格式就可以了
其他类似问题
2人觉得有用
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 微信一键转发软件 的文章

 

随机推荐