​​​​1.微信商品详情分享

本文涉及的产品
.cn 域名,1个 12个月
简介: 微信商品详情分享
// 引用微信分享 sdk
//安装方法
npm install weixin-js-sdk
var wx = require('weixin-js-sdk');
methods: {
    // 微信商品详情分享
      fenXBtn() {
        const url = 'Index/ajaxGetWxConfig'; //location.href.split('#')[0]
        let idS = window.location.href;
        let shareShopId = this.$store.state.shop_id;
        // console.log(idS.replace(/shop_id/,));
        // let askUrl = this.IndexDemo('shop_id') != -1 ? idS : `${idS}&shop_id=${this.$store.state.shop_id}`
        let askUrl = this.$uti.IndexDemo('shop_id') != -1 ? idS : (shareShopId ? `${idS}&shop_id=${shareShopId}` :
          `${idS}`);
        // let askUrl = `${window.location.href}&shop_id=${this.$store.state.shop_id}`
        let wxTitle = this.shopInfo.name
        let wxDesc = this.shopInfo.goods_remark
        let imgBox = this.$uti.getImgCon(this.imgBx) //图片路径封装
        let bodyParam = {
          askUrl
        }
        this.$http.postRequest(url, bodyParam).then(res => {
          // console.log(res);
          const {
            appId,
            nonceStr,
            rawString,
            signature,
            timestamp
          } = res
          // 微信分享授权
          wx.config({
            debug: !1, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出
            appId, // 必填,公众号的唯一标识,填自己的!
            timestamp, // 必填,生成签名的时间戳,刚才接口拿到的数据
            nonceStr, // 必填,生成签名的随机串
            rawString,
            signature, // 必填,签名,见附录1
            jsApiList: [ // 需要使用的JS接口列表
              'onMenuShareTimeline',
              'onMenuShareAppMessage',
              'updateTimelineShareData',
              'updateAppMessageShareData'
            ]
          })
        })
        wx.ready(function() {
          // 分享到朋友圈
          wx.onMenuShareTimeline({
            title: wxTitle, // 分享标题
            // link: 'http://tksn.shangpreechina.com/', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            link: askUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            // imgUrl: that.$uti.getImgCon(this.imgBx), // 分享图标 
            imgUrl: imgBox, // 分享图标
            success: function() {
              // 设置成功
              alert("分享成功");
              // console.log("分享成功");
            }
          })
          //分享给朋友
          wx.onMenuShareAppMessage({
            title: wxTitle,
            desc: wxDesc,
            link: askUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
            imgUrl: imgBox, // 分享图标 
            success: function() {
              console.log("分享成功");
            },
            cancel: function() {
              console.log("取消分享");
            }
          });
        })
      }
}

util.js 在页面调用是为了判断分享路径携不携带shop_id(店铺id)

// 判断 页面王志忠书否存在str
const IndexDemo = (str2) => {
  let str1 = window.location.href
  let s = str1.indexOf(str2);
  return (s);
}

2.分享方法封装  分享页面

 

let commoneUrl = 'http:/xxxxxxxxxxxxxxxxxxxxxx/'
//post请求封装
function postRequest222(url, data) {
  var promise = new Promise((resolve, reject) => {
    var postData = data;
    uni.request({
      url: commoneUrl + url,
      data: postData,
      method: 'POST',
      // withCredentials:true,
      header: {
        'content-type': 'application/x-www-form-urlencoded',
        // "Authorization":'22'
      },
      success: function(res) {
        // console.log(res);
        if (res.statusCode === 200 && res.data.resultCode == 0) {
          resolve(res.data);
        } else {
          resolve(res.data)
        }
      },
      error: function(e) {
        reject('网络出错');
      }
    })
  });
  return promise;
}
// 获取网站基础配置信息 
const webConfig = (shop_id) => {
  const url = 'Index/getWebconfig';
  postRequest222(url).then(res => {
    console.log("配置Uti", res);
    if (res.code == 200) {
      uni.setStorageSync('Webconfig', res.data);
      uni.setStorageSync('phone', res.data.MOBILE);
      getApp().globalData.phone = res.data.MOBILE
      uni.setNavigationBarTitle({
        title: res.data.CFG_WEBNAME
      })
      let shop_id = shop_id
      let title = res.data.SYS_SHARE_TITLE
      let remark = res.data.SYS_SHARE_DESC
      let Image = getImgCon(res.data.SYS_SHARE_IMG)
      shareFun(shop_id, title, remark, Image)
      return res.data
    }
    if (res.code == 200) {
      // this.$store.commit('saveWX_Webconfig', res)
      // // 页面标题文字
      // uni.setNavigationBarTitle({
      //  title: res.data.CFG_WEBNAME
      // })
      // this.phoneNumber = res.data.MOBILE
      // getApp().globalData.phone = res.data.MOBILE
      // this.$store.commit('saveWX_APPID', res.data.WX_APPID)
      // try {
      //  uni.setStorageSync('phone', res.data.MOBILE);
      // } catch (e) {
      //  // error
      // }
    }
  })
}
// 引入分享 sdk   安装 npm i weixin-js-sdk
let wx = require('weixin-js-sdk');
// 判断 页面王志忠书否存在str
const IndexDemo = (str2) => {
  let str1 = window.location.href
  let s = str1.indexOf(str2);
  return (s);
}
//.微信分享
/** 
 * shop_id 店铺id 从全局取
 * title  分享标题
 * remark 分享描述
 * Image  分享封面图    
 */
const shareFun = (shop_id, title, remark, Image) => {
  let idS = window.location.href;
  let shareShopId = shop_id;
  let askUrl = IndexDemo('shop_id') != -1 ? idS : (shareShopId ? `${idS}&shop_id=${shareShopId}` :
    `${idS}`);
  let wxTitle = title
  let wxDesc = remark
  let imgBox = Image
  // console.log(askUrl,wxTitle,wxDesc,imgBox);
  const url = 'Index/ajaxGetWxConfig';
  let bodyParam = {
    askUrl
  }
  postRequest222(url, bodyParam).then(res => {
    console.log(res);
    const {
      appId,
      nonceStr,
      rawString,
      signature,
      timestamp
    } = res
    // 微信分享授权
    wx.config({
      debug: !1, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出
      appId, // 必填,公众号的唯一标识,填自己的!
      timestamp, // 必填,生成签名的时间戳,刚才接口拿到的数据
      nonceStr, // 必填,生成签名的随机串
      rawString,
      signature, // 必填,签名,见附录1
      jsApiList: [ // 需要使用的JS接口列表
        'onMenuShareTimeline',
        'onMenuShareAppMessage',
        'updateTimelineShareData',
        'updateAppMessageShareData'
      ]
    })
  })
  wx.ready(function() {
    // 分享到朋友圈
    wx.onMenuShareTimeline({
      title: wxTitle, // 分享标题
      // link: 'http://tksn.shangpreechina.com/', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
      link: askUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
      // imgUrl: that.$uti.getImgCon(this.imgBx), // 分享图标 
      imgUrl: imgBox, // 分享图标
      success: function() {
        // 设置成功
        alert("分享成功");
        // console.log("分享成功");
      }
    })
    //分享给朋友
    wx.onMenuShareAppMessage({
      title: wxTitle,
      desc: wxDesc,
      link: askUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
      imgUrl: imgBox, // 分享图标 
      success: function() {
        console.log("分享成功");
      },
      cancel: function() {
        console.log("取消分享");
      }
    });
  })
}
module.exports = {
  webConfig: webConfig, 
}

页面调用方法

onLoad(e) {
    // 分享
    setTimeout(() => {
      let shop_id = this.$store.state.shop_id
      this.$uti.webConfig(shop_id)
    }, 1000)
}

效果图展示

2.jpg

相关文章
|
XML JSON API
淘宝天猫API接入说明(淘宝天猫商品详情+关键词搜索商品列表)商品详情数据,商品sku数据,商品优惠券数据
业务场景:作为全球最大的 B2C 电子商务平台之一,淘宝天猫平台提供了丰富的商品资源,吸引了大量的全球买家和卖家。为了方便开发者接入淘宝天猫平台,淘宝天猫平台提供了丰富的 API 接口,其中历史价格接口是非常重要的一部分。大家有探讨稳定采集淘宝(天猫)京东阿里拼多多等平台整站实时商品详情历史价格数据接口,通过该接口开发者可以更好地了解商品的情况,商品详情数据详细信息查询,数据参数包括:商品链接,商品列表主图、价格、标题,sku,库存,销量,店铺昵称,店铺等级,商品详情SKU属性,商品视频,商品优惠券,促销信息,详情属性描述,宝贝ID,区域ID,发货地,发货至,快递费用,物流费用等页面上有的数据
|
3月前
|
JSON 数据挖掘 API
抖音商品详情API接口如何使用
使用抖音商品详情 API 需要先注册抖音开放平台账号并创建应用,获取 appkey 和 appsecret。接着阅读 API 文档,构建并发送 HTTP 请求,处理返回的 JSON 数据。注意保护密钥、处理错误和确保数据合规。
|
3月前
|
缓存 数据挖掘 API
商品详情API接口的应用实践
本文探讨了商品详情API接口在电商领域的应用实践,介绍了其作为高效数据交互方式的重要性,包括实时获取商品信息、提升用户体验和运营效率。文章详细描述了API接口的特点、应用场景如商品展示、SEO优化、数据分析及跨平台整合,并提出了缓存机制、分页加载、异步加载和错误处理等优化策略,旨在全面提升电商运营效果。
|
4月前
|
JSON 搜索推荐 API
抖音商品详情API接口:获取商品信息的指南
抖音商品详情API接口由抖音开放平台提供,允许第三方应用访问抖音小店的商品数据,包括基本信息、价格、库存及用户评价等。其优势在于数据实时性、自动化处理、市场分析及个性化推荐。通过注册账号、获取API密钥、阅读文档和构建请求,用户可高效获取商品信息,提升运营效率。未来,该接口将在电商领域发挥更大作用。
|
7天前
|
XML JSON API
1688商品详情API接口系列
1688商品详情API接口系列是阿里巴巴旗下1688网站为开发者提供的一系列应用程序编程接口,旨在帮助开发者或企业获取1688平台上特定商品的详细信息。以下是对1688商品详情API接口系列的详细概述:
|
12天前
|
JSON API 开发者
速卖通获得AliExpress商品详情API接口文章
速卖通(AliExpress)是阿里巴巴旗下的全球跨境电商平台,提供便捷的在线购物渠道。为帮助开发者和商家高效管理商品信息,速卖通提供了商品详情API接口。本文介绍如何使用aliexpress.item_get API获取商品详情,包括获取API密钥、调用API接口及处理响应数据,帮助用户提升商品管理和营销效率。注意API调用限制和合法合规使用。
|
3月前
|
安全 搜索推荐 数据挖掘
解密虾皮商品详情API接口:获取与运用
随着电子商务的蓬勃发展,各大电商平台纷纷开放API接口,为开发者提供丰富的数据资源和功能。虾皮作为东南亚领先的电商平台,其商品详情API接口在电商领域的应用尤为突出。本文将详细介绍虾皮商品详情API接口的功能、特点、获取方法及应用场景,帮助开发者更好地理解和运用这一接口。
89 2
|
3月前
|
供应链 监控 搜索推荐
商品详情API接口的多场景应用总结
商品详情API接口在电商、零售、物流及供应链管理等领域广泛应用,提供精准商品信息,优化用户体验,提升运营效率,支持数据驱动决策,并在移动应用和社交媒体等新兴领域展现出巨大潜力。
|
4月前
|
XML JSON API
淘宝商品详情API接口:获取商品信息的指南
淘宝详情API接口是淘宝开放平台提供的一种API接口,它允许开发者通过编程方式获取淘宝商品的详细信息。这些信息包括商品的基本属性、价格、库存状态、销售策略、卖家信息等,对于电商分析、市场研究或者商品信息管理等场景非常有用。
261 1
|
3月前
|
安全 NoSQL 测试技术
商品详情API接口的技术实现
本文介绍了电商平台上商品详情API接口的设计与实现过程,涵盖需求分析、接口定义、数据模型设计及技术选型等方面。通过合理的后端框架、数据库设计和安全措施,确保接口高效、稳定和安全。最后,通过详尽的测试与部署步骤,实现优质购物体验。旨在为技术人员提供实用参考。