微信小程序跳轉(zhuǎn)到H5頁面實(shí)戰(zhàn)篇

<meta charset="utf-8">

有些場(chǎng)景需要從微信小程序跳轉(zhuǎn)到H5頁面恢筝,通常網(wǎng)上的教程會(huì)告訴你使用web-view組件就可以了,但實(shí)際開發(fā)中還有很多需要注意的地方巨坊,尤其是很多概念往往會(huì)把初學(xué)者弄糊涂了撬槽,下面就讓我們從概念開始吧!

微信小程序:雖然開發(fā)方法類似網(wǎng)頁趾撵,但實(shí)際上是一種只能運(yùn)行在微信自己開發(fā)的瀏覽器中的特殊網(wǎng)頁恢氯,它所能夠使用的所有功能都必須由微信瀏覽器提供;
H5頁面:這是真正的網(wǎng)頁應(yīng)用,運(yùn)行在通用瀏覽器中勋拟,各種瀏覽器雖然在細(xì)微上有所差別勋磕,但總的來說是一致的,微信瀏覽器同時(shí)也是一種通用瀏覽器敢靡,能夠支持真正的網(wǎng)頁應(yīng)用挂滓。

因此我們才有可能在微信小程序和H5頁面之間進(jìn)行跳轉(zhuǎn),但這種跳轉(zhuǎn)是受到微信瀏覽器的嚴(yán)格控制的啸胧,因此我們有必要了解這些控制包括哪些赶站。

H5頁面所在的域名:假設(shè)你需要調(diào)轉(zhuǎn)的H5頁面URL為https://www.mysite.com/h5page,那么這里所說的域名就是www.mysite.com纺念,另外你沒有看錯(cuò)贝椿,這個(gè)URL必須是https,如果你還沒有為你的網(wǎng)站加上SSL陷谱,那么就先去申請(qǐng)一個(gè)證書吧(注意必須是公開申請(qǐng)的證書烙博,不能是自簽名的,微信不認(rèn)哦Q萄贰)

好了渣窜,這些都準(zhǔn)備好了,讓我們開始開發(fā)一個(gè)小例子宪躯。
由于web-view組件是一個(gè)全屏組件乔宿,不能和其它小程序組件合用,因此需要獨(dú)立占據(jù)一個(gè)頁面访雪,所以我們到例子就是在小程序的A頁面加一個(gè)鏈接详瑞,跳轉(zhuǎn)到B頁面,然后在B頁面使用web-view組件來加載H5頁面臣缀。
A頁面

<view class="answerer flex-wrp" bindtap='jumpToH5'>
        <view class="avatar flex-item">
            <image src="/images/logo-small.jpg"></image>
        </view>
        <view class="answerer-info flex-item">
            <text class="answerer-name">文章標(biāo)題</text>
            <text class="answerer-des">文章摘要</text>
        </view>
        <view class="follow flex-item">
            <text>十 關(guān)注</text>
        </view>
</view>

jumpToH5: function () {
    wx.navigateTo({
      url: '/pages/B'
    })
  },

B頁面

<web-view src="{{link}}" bindmessage="getMessage"></web-view>

  data: {
    link: "https://www.mysite.com/h5page"
  },

這時(shí)候當(dāng)你滿懷希望的點(diǎn)擊鏈接時(shí)坝橡,會(huì)出現(xiàn)第一個(gè)坎:未綁定網(wǎng)頁開發(fā)者

image

這是什么鬼,原來使用web-view組件并不是啥人上來就允許使用的肝陪,這時(shí)候需要第一個(gè)授權(quán)驳庭,就是授權(quán)開發(fā)者使用該組件。這里比較扯淡的是雖然這個(gè)組件是小程序使用的氯窍,但并不能在小程序開發(fā)號(hào)里面設(shè)置饲常,而必須在訂閱號(hào)或者服務(wù)號(hào)中進(jìn)行設(shè)置,網(wǎng)絡(luò)上經(jīng)常能夠查到的下面這個(gè)截圖只能登錄訂閱號(hào)或者服務(wù)號(hào)才能看到狼讨。

image

在這里設(shè)置綁定了開發(fā)者的微信號(hào)以后贝淤,我們終于可以使用web-view組件了,不過這時(shí)候又出了新問題: 不支持打開非業(yè)務(wù)域名

image

原來并不是什么網(wǎng)址拿來就可以設(shè)置跳轉(zhuǎn)的政供,你的小程序中就不能直接跳轉(zhuǎn)到百度上去播聪,小程序能夠跳轉(zhuǎn)的域名必須在業(yè)務(wù)域名中進(jìn)行注冊(cè)朽基,總算這次是在小程序開發(fā)號(hào)里面設(shè)置了,但注意在服務(wù)號(hào)的設(shè)置里也有業(yè)務(wù)域名這個(gè)設(shè)置离陶,不要搞混了(話說微信起名也太沒有想象力了,簡(jiǎn)直是一坨漿糊)招刨。

設(shè)置好了這個(gè)業(yè)務(wù)域名,滿心歡喜地打開小程序打却,點(diǎn)擊鏈接,What谎倔!又來柳击,這次的問題變成了:redirect_uri參數(shù)錯(cuò)誤

image

這時(shí)候控制權(quán)已經(jīng)從小程序轉(zhuǎn)移到了H5頁面片习,但微信頁面跳轉(zhuǎn)內(nèi)部的機(jī)制比較復(fù)雜捌肴,涉及到了OAuth認(rèn)證之類的毯侦,所以這個(gè)錯(cuò)誤已經(jīng)是H5頁面報(bào)的了哭靖,這就需要到H5頁面關(guān)聯(lián)的服務(wù)號(hào)中去進(jìn)行設(shè)置具垫,這次設(shè)置的項(xiàng)目叫做網(wǎng)頁授權(quán)域名侈离,在公眾號(hào)設(shè)置的功能設(shè)置里

image

添加好需要跳轉(zhuǎn)的域名之后,終于能夠看到H5頁面出現(xiàn)在調(diào)試器上了卦碾!

最后普及一下微信公共平臺(tái)三類賬號(hào)的區(qū)別

服務(wù)號(hào):支持最多的Web開發(fā)接口和JS開發(fā)接口起宽,是最常規(guī)的應(yīng)用開發(fā)賬號(hào);
訂閱號(hào):發(fā)文章用的坯沪,開發(fā)接口比較少,很多功能都不支持腐晾,是最傻瓜的文章發(fā)布賬號(hào);
小程序:小程序應(yīng)用的專屬開發(fā)賬號(hào)藻糖,僅支持對(duì)小程序的開發(fā),有許多設(shè)置還必須到前兩類賬號(hào)中去設(shè)置樱拴。

作者:敬亭閣主
鏈接:http://www.reibang.com/p/3c8e84c6e67d
來源:簡(jiǎn)書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)晶乔,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末垫蛆,一起剝皮案震驚了整個(gè)濱河市腺怯,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌呛占,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,123評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件疹味,死亡現(xiàn)場(chǎng)離奇詭異帜篇,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)笙隙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,031評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來签钩,“玉大人坏快,你說我怎么就攤上這事∶Ш瑁” “怎么了?”我有些...
    開封第一講書人閱讀 156,723評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵兔沃,是天一觀的道長(zhǎng)啃沪。 經(jīng)常有香客問我粘拾,道長(zhǎng)创千,這世上最難降的妖魔是什么入偷? 我笑而不...
    開封第一講書人閱讀 56,357評(píng)論 1 283
  • 正文 為了忘掉前任疏之,我火速辦了婚禮,結(jié)果婚禮上锋爪,老公的妹妹穿的比我還像新娘爸业。我一直安慰自己,他們只是感情好扯旷,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,412評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著毯炮,像睡著了一般耸黑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上大刊,一...
    開封第一講書人閱讀 49,760評(píng)論 1 289
  • 那天,我揣著相機(jī)與錄音曲尸,去河邊找鬼男翰。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蛾绎,可吹牛的內(nèi)容都是我干的鸦列。 我是一名探鬼主播,決...
    沈念sama閱讀 38,904評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼薯嗤,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了镜粤?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,672評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤肉渴,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后循狰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體券勺,經(jīng)...
    沈念sama閱讀 44,118評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,456評(píng)論 2 325
  • 正文 我和宋清朗相戀三年昧识,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了盗扒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片跪楞。...
    茶點(diǎn)故事閱讀 38,599評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡甸祭,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出池户,到底是詐尸還是另有隱情凡怎,我是刑警寧澤校焦,帶...
    沈念sama閱讀 34,264評(píng)論 4 328
  • 正文 年R本政府宣布寨典,位于F島的核電站翩隧,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏浴鸿。R本人自食惡果不足惜井氢,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,857評(píng)論 3 312
  • 文/蒙蒙 一岳链、第九天 我趴在偏房一處隱蔽的房頂上張望花竞。 院中可真熱鬧掸哑,春花似錦寇仓、人聲如沸烤宙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,731評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至罢猪,卻和暖如春叉瘩,著一層夾襖步出監(jiān)牢的瞬間膳帕,已是汗流浹背薇缅。 一陣腳步聲響...
    開封第一講書人閱讀 31,956評(píng)論 1 264
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留汤徽,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,286評(píng)論 2 360
  • 正文 我出身青樓谒府,卻偏偏與公主長(zhǎng)得像浮毯,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子债蓝,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,465評(píng)論 2 348