gogosun 最近的时间轴更新
大家好,打开一个在微信朋友圈分享的网页后,点击右上角的菜单选择复制链接通常复制出来的链接后面会带一个小尾巴,应该是微信强制加上的吧?
小尾巴:?from=timeline&isappinstalled=

但是今天我发现一个神奇的网页,分享到朋友圈后,再复制这个链接不带小尾巴。像下面这种效果:
http://www.baidu.com/g20160527125652552884094/g20160508200004340421368/AAABVRU3URsAAAABMQAAADE.html
大神们分析下他是怎么做到的?看起来好像微信没强制加上尾巴。
2016-05-27 16:27:13 +08:00
gogosun

gogosun

V2EX 第 36802 号会员,加入于 2013-03-29 21:44:21 +08:00
gogosun 最近回复了
2016-05-30 18:25:27 +08:00
回复了 gogosun 创建的主题 问与答 一个艰难的页面重定向问题
@subpo laji 2B 一个。去你 md
2016-05-29 07:24:28 +08:00
回复了 gogosun 创建的主题 问与答 一个艰难的页面重定向问题
@popok 那他这个判断出来的结果怎么传递给前端 javascript ?
2016-05-29 07:17:28 +08:00
回复了 gogosun 创建的主题 问与答 一个艰难的页面重定向问题
@pimin 代码里面有 UA 判断情况,不过你可以试试把 2 个链接发到微信群或者好友聊天对话框,在相同的 UA 环境下, A 还是显示过劳, B 打开还是视频,并 B 打开后,后面的尾巴已经没有了,链接形式同 A ,但是显示的内容并不是 A 的过劳了。
2016-05-29 01:30:29 +08:00
回复了 gogosun 创建的主题 问与答 一个艰难的页面重定向问题
@soland
@subpo
@JiShuTui
@pimin
@asp
@popok
各位大神,本来我想简单的说明问题,不过似乎没说到主题。实际的问题是这样子:
先定义 2 个链接:
A=http://www.680109.top/g20160528054043724005394/g20160508200004340421368/AAABVRk3yD0AAAABMwAAADM.html

B= http://www.680109.top/g20160528054043724005394/g20160508200004340421368/AAABVRk3yD0AAAABMwAAADM.html?from=timeline&isappinstalled=0

我有一个链接 A 在微信里面打开是一个过劳的 10 个危险信号页面。
但是在 A 链接加上尾巴,最后的链接是 B 效果。
然后再从微信里面打开,是一个视频页面。并且 B 链接在打开后自动去掉了尾巴变成了 A 链接。

我扒了 A 页面代码,发现有下面的 js :

<script type="text/javascript">
var articleUrl = "http://www.wehappyd.com/agile-cms/touch/article.action?id=g20150924070028956132562&preview=1";
var isFromTimeline = "false";
var isFromGroupmessage = "false";
if (isFromTimeline == "true" || isFromGroupmessage == "true") {
setTimeout(function(){
location.replace('');
}, 500);
} else {
document.getElementById("mainFrame").src = articleUrl;
document.getElementById("mainFrame").removeAttribute("style");
}
</script>

那个过劳危险信号页面其实是 http://www.wehappyd.com/agile-cms/touch/article.action?id=g20150924070028956132562&preview=1 的内容。

那么问题来了,

打开 B 链接是如何自动去掉了尾巴?from=timeline&isappinstalled=0 ,并且显示的页面内容是含视频的页面而不是过劳危险页面?

是通过重定向,传递了 isFromTimeline 或者 isFromGroupmessage 参数到 A 页面么?
如果是如何重定向,如何传递?

如果不是,是如何实现上述流程的呢

谢谢
2016-05-29 00:20:40 +08:00
回复了 gogosun 创建的主题 问与答 一个奇怪的微信朋友圈分享链接问题
@justjavac 我看他网页代码有这个:

<script type="text/javascript">
var articleUrl = "http://www.wehappyd.com/agile-cms/touch/article.action?id=g20150924070028956132562&preview=1";
var isFromTimeline = "false";
var isFromGroupmessage = "false";
if (isFromTimeline == "true" || isFromGroupmessage == "true") {
setTimeout(function(){
location.replace('');
}, 500);
} else {
document.getElementById("mainFrame").src = articleUrl;
document.getElementById("mainFrame").removeAttribute("style");
}
</script>

wehappyd.com 这个链接打开后的内容实际上就是不带尾巴那条链接显示的内容。
那么从有尾巴链接重定向到无尾巴链接可以传递 isFromTimeline 和 isFromGroupmessage 参数么?


小白一个,这两天才恶补一些 php js 知识。
请大神不吝赐教!谢谢
2016-05-29 00:13:36 +08:00
回复了 gogosun 创建的主题 问与答 一个奇怪的微信朋友圈分享链接问题
@justjavac 大神, path query 如何实现这个功能的?
2016-05-28 19:35:52 +08:00
回复了 gogosun 创建的主题 问与答 一个奇怪的微信朋友圈分享链接问题
@justjavac 带尾巴链接: http://www.680107.top/g20160527125652552884094/g20160508200004340421368/AAABVRU3URsAAAABMQAAADE.html?from=timeline&isappinstalled=0
把这 2 个链接复制到微信上发到一个聊天对话框, 2 个显示的内容不同。
我想知道他是如何实现访问带尾巴的链接后自动去掉了尾巴,然后还能显示访问带尾巴的那个链接页面内容。
去掉尾巴后,他不就重定向到了 http://www.680107.top/g20160527125652552884094/g20160508200004340421368/AAABVRU3URsAAAABMQAAADE.html 了么?
但是这个链接页面的机制是显示的另外一个页面。和带尾巴链接所显示的页面不同。他是如何显示出带尾巴链接的页面内容呢。
2016-05-28 08:28:55 +08:00
回复了 gogosun 创建的主题 问与答 一个奇怪的微信朋友圈分享链接问题
@justjavac http://www.680107.top/g20160527125652552884094/g20160508200004340421368/AAABVRU3URsAAAABMQAAADE.html 这个链接电脑上打开显示不了真实页面,在手机浏览器打开,然后分享到朋友圈,然后再从朋友圈复制链接会不带尾巴。
2016-05-27 21:54:00 +08:00
回复了 gogosun 创建的主题 问与答 一个奇怪的微信朋友圈分享链接问题
@justjavac 是的,百度浏览器
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1120 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 12ms · UTC 18:51 · PVG 02:51 · LAX 10:51 · JFK 13:51
Developed with CodeLauncher
♥ Do have faith in what you're doing.