小程序獲取公衆号文章并展示 - 新聞資訊 - 雲南小程序開發|雲南軟件開發|雲南網站建設-昆明融晨信息技術有限公司

159-8711-8523

雲南網建設/小程序開發/軟件開發

知識

不(bù)管是(shì)網站,軟件還是(shì)小程序,都要(yào / yāo)直接或間接能爲(wéi / wèi)您産生價值,我們在(zài)追求其視覺表現的(de)同時(shí),更側重于(yú)功能的(de)便捷,營銷的(de)便利,運營的(de)高效,讓網站成爲(wéi / wèi)營銷工具,讓軟件能切實提升企業内部管理水平和(hé / huò)效率。優秀的(de)程序爲(wéi / wèi)後期升級提供便捷的(de)支持!

您當前位置>首頁 » 新聞資訊 » 小程序相關 >

小程序獲取公衆号文章并展示

發表時(shí)間:2021-4-22

發布人(rén):融晨科技

浏覽次數:152

最近在(zài)忙公司的(de)項目,正忙得要(yào / yāo)死要(yào / yāo)死的(de),客戶又來(lái)了(le/liǎo)一個(gè)傻* 的(de)需求:要(yào / yāo)在(zài)小程序内顯示對應公衆号的(de)文章列表,點擊列表中的(de)某一個(gè)跳轉到(dào)文章詳情裏面,當時(shí)我隻想說(shuō):xxxxxxxxx,沒辦法搞起來(lái)吧,誰讓客戶就(jiù)是(shì)傻* 呢!!! 

這(zhè)裏要(yào / yāo)獲取的(de)是(shì)公衆号的(de)數據。先去微信公衆号開發文檔看一眼:微信公衆号開發文檔 

然後我們找到(dào)素材管理-----》素材列表,這(zhè)裏就(jiù)有我們想要(yào / yāo)的(de)内容了(le/liǎo)

1、關聯公衆号

關聯不(bù)關聯小程序我是(shì)不(bù)曉得,反正我的(de)是(shì)沒有關聯,有需要(yào / yāo)的(de)關聯下就(jiù)好,不(bù)過打開文章的(de)話要(yào / yāo)關聯的(de)。步驟如下:

1、登錄到(dào)對應的(de)公衆号後台

2、 輸入我們小程序地(dì / de)appId,然後點擊下一步

3、 查看密鑰和(hé / huò)appid

在(zài)左側的(de)開發---------》基本配置裏面有

密鑰最好保存一下,白名單讓後台開發人(rén)員設置一下就(jiù)好,不(bù)添加白名單會報錯的(de)

2、獲取access_token

文檔說(shuō)的(de)很清楚,要(yào / yāo)獲取素材列表,必須要(yào / yāo)加token,并且不(bù)要(yào / yāo)頻繁的(de)去請求獲取token,
這(zhè)裏是(shì)一個(gè)POST請求

在(zài)這(zhè)裏插入圖片描述

我這(zhè)裏的(de)token是(shì)請求後台接口返回的(de),appID和(hé / huò)密鑰不(bù)要(yào / yāo)在(zài)小程序中暴露

https://api.weixin.qq.com/cgi-bin/material/batchget_material?access_token=獲得的(de)token
複制代碼

3、請求api并渲染

第一次請求回來(lái)的(de)時(shí)候都是(shì)亂碼,titile、content字段什麽的(de)顯示的(de)都是(shì)這(zhè)種格式,我直接一臉懵,就(jiù)像類似于(yú)下面這(zhè)種的(de)

出(chū)現這(zhè)種情況是(shì)因爲(wéi / wèi):這(zhè)個(gè)亂碼主要(yào / yāo)是(shì)由于(yú)微信那邊采用的(de)是(shì)“ISO-8859-1”編碼造成的(de),讓後台人(rén)員處理一下變成UTF-8就(jiù)行

現在(zài)再來(lái)請求一下看看效果

//獲取公衆号文章列表
    getArticleList(){
      Util.httpRequest({
        url: `http://42.193.4.236:9002/wx/getContentList`,
        data: {
          "type": 'news',
          "offset": 0,
          "count": 20
        }
      }).then(res => {
        if (res.statusCode === 200) {
          let list = res.data.item
          this.setData({
            articleList: list
          })
        }
      }).catch(err => {
        console.log(err)
      })
    },
複制代碼

現在(zài)我們看到(dào)就(jiù)已經拿到(dào)信息了(le/liǎo),渲染出(chū)來(lái)也(yě)是(shì)好的(de),現在(zài)就(jiù)剩下跳轉到(dào)詳情了(le/liǎo),跳轉到(dào)詳情頁面建議直接用web-view标簽包裹,把裏面的(de)url傳過去就(jiù)好,直接渲染content有的(de)内容是(shì)富文本,渲染出(chū)來(lái)的(de)是(shì)亂碼

相關案例查看更多