微信外網開啟小程式(URL Scheme)

2022-06-05 06:48:08 字數 4160 閱讀 6190

開啟小程式,只有這樣一種單一的場景。

開啟方式

適用場景

場景值使用方式

備註官網鏈結

url scheme

開啟小程式

1065

location.href = 'weixin://dl/business/?t= *ticket*'

ticket由服務端介面返回(openlink)

1167

需配置js介面網域名稱或雲開發靜態**託管繫結的網域名稱下網頁

url scheme的獲取

ps:怎樣

獲取access_token,這裡就不寫了

post
請求引數:屬性型別

預設值必填

說明access_token

string

是介面呼叫憑證

jump_wxa

object

否跳轉到的目標小程式資訊。

is_expire

boolean

false

否生成的scheme碼型別,到期失效:true,永久有效:false。

expire_time

number

否到期失效的scheme碼的失效時間,為unix時間戳。生成的到期失效scheme碼在該時間前有效。最長有效期為1年。生成到期失效的scheme時必填。

jump_wxa 的結構:

屬性型別

預設值必填

說明path

string

是通過scheme碼進入的小程式頁面路徑,必須是已經發布的小程式存在的頁面,不可攜帶query。path為空時會跳轉小程式主頁。

query

string

是通過scheme碼進入小程式時的query,最大1024個字元,只支援數字,大小寫英文以及部分特殊字元:!#$&'()*+,/:;=?@-._~

,

"is_expire":true,

"expire_time":1614059318

}

/**

* 獲取scheme(建立)

* @param array $params

* @return array

* @throws exception

*/public function generatescheme(array $params)

/*** 通過標記獲取openlink

* @param $tag

* @return array|mixed

* @throws userexception

*/public function getschemebytag($tag)

/*** 設定快取時間,預設快取360天

* @param null $expire_time

* @return float|int|null

*/protected function setcachetime($expire_time = null)

/*** 設定唯一標籤

* @param $scene 場景

* @param $path 小程式頁面路徑

* @param $query 引數

* @return string

*//**

* @param $is_expire 生成的scheme碼型別,到期失效:true,永久有效:false。

* @param $expire_time 到期失效的scheme碼的失效時間,為unix時間戳。生成的到期失效scheme碼在該時間前有效。最長有效期為1年。生成到期失效的scheme時必填。

* @param $path 通過scheme碼進入的小程式頁面路徑,必須是已經發布的小程式存在的頁面,不可攜帶query。path為空時會跳轉小程式主頁。

* @param $query 通過scheme碼進入小程式時的query,最大1024個字元,只支援數字,大小寫英文以及部分特殊字元:!#$&'()*+,/:;=?@-._~

* @return mixed

* @throws exception

*/return $result['openlink'];

}

scheme儲存表設計:

create table `cw_scheme` (

`id` int(10) unsigned not null auto_increment,

`scene` varchar(32) character set utf8mb4 collate utf8 not null comment '場景',

`path` varchar(255) character set utf8mb4 collate utf8 default null comment '通過scheme碼進入的小程式頁面路徑,必須是已經發布的小程式存在的頁面,不可攜帶query。path為空時會跳轉小程式主頁。',

`query` varchar(1024) default null comment '通過scheme碼進入小程式時的query,最大1024個字元,只支援數字,大小寫英文以及部分特殊字元:!#$&''()*+,/:;=?@-._~',

`expire_time` int(10) unsigned default null comment '到期失效的scheme碼的失效時間(業務系統通過這個來判斷)',

`created_at` bigint(20) default null comment '建立時間',

`updated_at` bigint(20) default null comment '修改時間',

primary key (`id`),

) engine=innodb default charset=utf8 collate=utf8 comment='scheme方法產生小程式碼';

生成的url scheme如下所示:weixin://dl/business/?t= *ticket*ios系統支援識別url scheme,可在簡訊等應用場景中直接通過scheme跳轉小程式。android系統不支援直接識別url scheme,使用者無法通過scheme正常開啟小程式,開發者需要使用h5頁面中轉,再跳轉到scheme實現開啟小程式,跳轉**示例如下:

location.href = 'weixin://dl/business/?t= *ticket*'
端使用方式

備註android

location.href="weixin://dl/business/?t= *ticket*"

只有一種方式

ios直接識別url scheme 或使用location.href方式

兩種方式

but, 當我們進行簡訊,郵件等觸達時,是無法確定使用者所使用的的手機裝置是ios還是android

so, 我們從實際的業務觸發,都需要乙個h5頁面進行中轉處理。

這時在h5頁面可以通過tag請求getschemebytag($tag)介面來獲取openlink就可以通過

location.href = 'weixin://dl/business/?t= *ticket*'
方法來開啟小程式了(這裡可以做一些過期等其他的判斷處理)

當然也可以把openlink等包含在要傳送的簡訊鏈結上,但總感覺這樣不好

適用場景:

非個人主體並且已認證的小程式,使用雲開發靜態**託管的網頁,可以免鑑權跳轉任意合法合規的小程式

微信 微信品牌小程式正式開啟公測

文章目錄 程式設計客棧 www.cppcns.com 7月24日 訊息 今日,微信宣布,微信品牌小程式正式開啟公測,提供 程式設計客棧通用品牌認證 和 電商品牌認證 兩種認證方式。認證後,即可享受品牌小程式專屬的多項產品能力。通過認證後,官方背書標籤將在搜尋結果 小程式資料頁 8 月初上線 等場景中...

(微信小程式)一 初識微信小程式

需要看的 先是檔案目錄 一 pages 他存放於多個頁面 如 index log頁面。可以把他裡面的每個資料夾看成乙個整體。這個整體存放著 html css 和 資料 1 index資料夾 存放的index頁面的目錄。2 index.js 他可以處理得到 ajax 或自定義定義的資料。把得到的值封裝...

微信小程式

2.單獨設定某一頁面下的頂部欄的背景顏色,在其對應的.json檔案下修改即可 3.this.setdata 注意 onload函式下面執行的是非同步操作,非同步操作裡面this.data.直接賦值,是無效的,必須使用this.setdata this.setdata msg he llo wor l...