京东登录

info 如果开发者需要更新之前已经授权用户的信息,请在用户授权时将 syncUserProfile 设置为 'overwrite'。

登入登出

登入

SDK 提供了快速登录小程序的接口,省去使用京东登录接口时获取 code, session_key 等辅助操作。

建议的登录流程是,通过 jd.BaaS.auth.loginWithJd() 获取用户 openID, 这时无需弹框授权,开发者拿到 openID 可以建立自身的帐号 ID。当必须要获得用户的头像昵称等信息时,才让用户点击 button(open-type="getUserInfo" ),弹框授权。

静默登录

jd.BaaS.auth.loginWithJd(null, { createUser })

该方法会进行简单的登录,不需要用户授权,即不会弹出授权框。但如果 app 中未登录,会弹出登录框。

参数说明

参数
类型
说明

createUser

Boolean

是否创建用户,默认为 true,可选

createUser 参数决定了一个新的用户第一次登录时的服务端处理行为。 默认为 true,服务端会有该用户创建一个知晓云用户记录。 当 createUserfalse 时,服务端会终止登录过程,返回 404 错误码,开发者可根据该返回结果进行多平台账户绑定的处理。详见 多平台用户统一登录 说明

请求示例

// 登录小程序
jd.BaaS.auth.loginWithJd().then(user => {
  // 登录成功
}, err => {
  // 登录失败
})

登录成功返回示例 then 回调中的 user 对象为 currentUser 对象,请参考currentUser 小节

登录失败返回示例

err 对象结构请参考错误码和 HError 对象

设置用户名和邮箱

用户通过京东登录后,可以设置邮箱、用户名、密码,以便下次可以通过用户名或者邮箱登录。

详情请参考 更新用户名更新邮箱

强制登录

jd.BaaS.auth.loginWithJd(data, {createUser, syncUserProfile})

该方法会弹出授权框。如果 app 中未登录,会先弹出登录框。

参数说明

参数
类型
说明

data

object

bindgetuserinfo 事件回调返回的参数

createUser

Boolean

是否创建用户,默认为 true

syncUserProfile

String

是否同步第一层级用户信息,可选值为 overwritesetnxfalse,默认值为setnx

createUser 参数决定了一个新的用户第一次登录时的服务端处理行为。 默认为 true,服务端会有该用户创建一个知晓云用户记录。 当 createUserfalse 时,服务端会终止登录过程,返回 404 错误码,开发者可根据该返回结果进行多平台账户绑定的处理。详见 多平台用户统一登录 说明

{{ userInfoAlert() }}

请求示例

用户同意授权返回示例 then 回调中的 user 对象为 currentUser 对象,请参考currentUser 小节

用户拒绝授权示例 catch 回调中的 HError 对象示例:

其他错误 catch 回调中的 res 对象示例:

res 对象结构请参考错误码和 HError 对象

info jd.BaaS.auth.loginWithJd 默认会检查用户是否已登录,若未登录,该接口默认会先执行登录操作

关联京东小程序

UserRecord.linkJd(data, {syncUserProfile})

通过此方法可将通用注册登录用户(在已登录状态下)关联京东小程序账号。

参数说明

参数
类型
说明

data

object

bindgetuserinfo 事件回调返回的参数

syncUserProfile

String

是否同步第一层级用户信息,可选值为 overwritesetnxfalse,默认值为setnx

{{ userInfoAlert() }}

请求示例

  1. 不获取用户信息(静默登录):

  1. 获取用户信息(强制登录):

返回示例

多平台用户统一登录

假设开发者现在同时支持京东小程序和 web 端登录,需要京东小程序新用户关联到已经注册好的用户账户,才能登录成功。 可以通过 loginWithJd 的参数 createUser 设置为 false,此时,服务端会判断该用户是否已经有账户记录, 如果没有,则返回 404 状态码。开发者可根据此状态码,跳转到需要填写用户名密码页面,进行已有账户的关联或新的账户的创建, 完成后,调用 linkJd 方法完成当前京东小程序用户与账户的绑定。下一次用户再次登录时,则会直接登录成功。

示例代码

静默登录时检查

请求用户授权(强制登录)后检查

若已经提前申请了用户授权,也可以在 jd.getUserInfo() 的 success 回调中进行关联账户

Last updated

Was this helpful?