|
@@ -786,15 +786,52 @@
|
|
|
}
|
|
}
|
|
|
} catch (eShareCk) {}
|
|
} catch (eShareCk) {}
|
|
|
/**
|
|
/**
|
|
|
- * App 内无分享 H5 写入的 newdetailsList;若沿用浏览器 URL 里的 fromHomeFeed=1,
|
|
|
|
|
- * 详情会走「首页种子」分支并禁止 recommend,表现为仅一条、下滑无更多作品。
|
|
|
|
|
|
|
+ * 与微信落地 shareDynamic、group_user buildDynamicShareH5FullUrl 一致:**item 双重 URL 编码**,
|
|
|
|
|
+ * 顺序 `item & needShowMore & fromHomeFeed & fromShareDynamic=1 & 其余`;fromHomeFeed 仍带给 App,
|
|
|
|
|
+ * newdetails 在 fromShareDynamic=1 时忽略其「首页种子」语义。
|
|
|
*/
|
|
*/
|
|
|
- params.delete('fromHomeFeed');
|
|
|
|
|
- /** 与 group_user newdetails 约定:播放/横竖屏 object-fit 与首页动态进详情一致,且不启用「首页种子」并行拉流;放 query 最前,避免极长 URL 从尾部截断时丢失 */
|
|
|
|
|
params.delete('fromShareDynamic');
|
|
params.delete('fromShareDynamic');
|
|
|
- var qsRest = params.toString();
|
|
|
|
|
- var qsOut = qsRest ? ('?fromShareDynamic=1&' + qsRest) : '?fromShareDynamic=1';
|
|
|
|
|
- return qsOut;
|
|
|
|
|
|
|
+ var itemForShopro = params.get('item');
|
|
|
|
|
+ if (!itemForShopro || String(itemForShopro).trim() === '') {
|
|
|
|
|
+ try {
|
|
|
|
|
+ itemForShopro = getMergedParam('item');
|
|
|
|
|
+ } catch (eGi) {
|
|
|
|
|
+ itemForShopro = '';
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ var nsmRaw = params.get('needShowMore');
|
|
|
|
|
+ var nsmOut =
|
|
|
|
|
+ nsmRaw != null && String(nsmRaw).trim() !== '' ? String(nsmRaw).trim() : 'true';
|
|
|
|
|
+ var fhfRaw = params.get('fromHomeFeed');
|
|
|
|
|
+ var fhfOut =
|
|
|
|
|
+ fhfRaw != null && String(fhfRaw).trim() !== '' ? String(fhfRaw).trim() : '1';
|
|
|
|
|
+ var segs = [];
|
|
|
|
|
+ if (itemForShopro && String(itemForShopro).trim()) {
|
|
|
|
|
+ segs.push(
|
|
|
|
|
+ 'item=' +
|
|
|
|
|
+ encodeURIComponent(encodeURIComponent(String(itemForShopro).trim()))
|
|
|
|
|
+ );
|
|
|
|
|
+ }
|
|
|
|
|
+ segs.push('needShowMore=' + encodeURIComponent(nsmOut));
|
|
|
|
|
+ segs.push('fromHomeFeed=' + encodeURIComponent(fhfOut));
|
|
|
|
|
+ segs.push('fromShareDynamic=1');
|
|
|
|
|
+ var skipShoproKeys = {
|
|
|
|
|
+ item: 1,
|
|
|
|
|
+ needshowmore: 1,
|
|
|
|
|
+ fromhomefeed: 1,
|
|
|
|
|
+ fromsharedynamic: 1
|
|
|
|
|
+ };
|
|
|
|
|
+ params.forEach(function (val, key) {
|
|
|
|
|
+ var kl = String(key || '')
|
|
|
|
|
+ .trim()
|
|
|
|
|
+ .toLowerCase();
|
|
|
|
|
+ if (!kl || skipShoproKeys[kl]) return;
|
|
|
|
|
+ if (val == null) return;
|
|
|
|
|
+ var vs = String(val);
|
|
|
|
|
+ if (vs === '') return;
|
|
|
|
|
+ segs.push(encodeURIComponent(key) + '=' + encodeURIComponent(vs));
|
|
|
|
|
+ });
|
|
|
|
|
+ return '?' + segs.join('&');
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|