Package com.foxinmy.weixin4j.wxa.api
Class QrCodeApi
- java.lang.Object
-
- com.foxinmy.weixin4j.api.BaseApi
-
- com.foxinmy.weixin4j.wxa.api.QrCodeApi
-
-
Field Summary
-
Fields inherited from class com.foxinmy.weixin4j.api.BaseApi
weixinExecutor
-
-
Constructor Summary
Constructors Constructor Description QrCodeApi(TokenManager tokenManager)
QrCodeApi(TokenManager tokenManager, Properties properties)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description byte[]
createWxaQrCode(String path, Integer width)
获取小程序二维码.protected String
getRequestUri(String key)
byte[]
getWxaCode(String path, Integer width, Boolean autoColor, Color lineColor, Boolean hyaline)
获取小程序码.byte[]
getWxaCodeUnlimit(String scene, String page, Integer width, Boolean autoColor, Color lineColor, Boolean hyaline)
获取小程序码.protected ResourceBundle
weixinBundle()
-
-
-
Constructor Detail
-
QrCodeApi
public QrCodeApi(TokenManager tokenManager)
-
QrCodeApi
public QrCodeApi(TokenManager tokenManager, Properties properties)
-
-
Method Detail
-
getWxaCode
public byte[] getWxaCode(String path, Integer width, Boolean autoColor, Color lineColor, Boolean hyaline) throws WeixinException
获取小程序码.接口A: 适用于需要的码数量较少的业务场景
注意:通过该接口生成的小程序码,永久有效,数量限制见微信小程序文档文末说明,请谨慎使用。 用户扫描该码进入小程序后,将直接进入 path 对应的页面。
- Parameters:
path
- 不能为空,最大长度 128 字节width
- 二维码的宽度,默认值 430autoColor
- 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调lineColor
-authColor
为 false 时生效hyaline
- 是否需要透明底色, 为true时,生成透明底色的小程序码- Returns:
- image bytes of WXA code.
- Throws:
WeixinException
- indicates getting access token failed or getting WXA code failed.- See Also:
- 获取小程序码
-
getWxaCodeUnlimit
public byte[] getWxaCodeUnlimit(String scene, String page, Integer width, Boolean autoColor, Color lineColor, Boolean hyaline) throws WeixinException
获取小程序码.接口B:适用于需要的码数量极多的业务场景
注意:通过该接口生成的小程序码,永久有效,数量暂无限制。 用户扫描该码进入小程序后,开发者需在对应页面获取的码中 scene 字段的值,再做处理逻辑。 使用如下代码可以获取到二维码中的 scene 字段的值。 调试阶段可以使用开发工具的条件编译自定义参数 scene=xxxx 进行模拟, 开发工具模拟时的 scene 的参数值需要进行 urlencode。
// 这是首页的 js Page({ onLoad: function(options) { // options 中的 scene 需要使用 decodeURIComponent 才能获取到生成二维码时传入的 scene var scene = decodeURIComponent(options.scene) } })
- Parameters:
scene
- 最大32个可见字符,只支持数字, 大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~, 其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式)page
- 必须是已经发布的小程序存在的页面(否则报错), 例如 "pages/index/index",根路径前不要填加'/', 不能携带参数(参数请放在scene字段里), 如果不填写这个字段,默认跳主页面width
- 二维码的宽度,默认值 430autoColor
- 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调,默认值 falselineColor
-autoColor
为 false 时生效,使用 rgb 设置颜色hyaline
- 是否需要透明底色,为true时,生成透明底色的小程序码- Returns:
- image bytes of WXA code.
- Throws:
WeixinException
- indicates getting access token failed or getting WXA code failed.- See Also:
- 获取小程序码
-
createWxaQrCode
public byte[] createWxaQrCode(String path, Integer width) throws WeixinException
获取小程序二维码.接口C:适用于需要的码数量较少的业务场景
注意:通过该接口生成的小程序二维码,永久有效,数量限制见微信小程序文档文末说明,请谨慎使用。 用户扫描该码进入小程序后,将直接进入 path 对应的页面。
- Parameters:
path
- 不能为空,最大长度 128 字节width
- 二维码的宽度,默认值 430- Returns:
- image bytes of WXA QR code.
- Throws:
WeixinException
- indicates getting access token failed or getting WXA QR code failed.- See Also:
- 获取小程序二维码
-
weixinBundle
protected ResourceBundle weixinBundle()
- Specified by:
weixinBundle
in classBaseApi
-
getRequestUri
protected String getRequestUri(String key)
- Overrides:
getRequestUri
in classBaseApi
-
-