如何使用 wx.login 获取登录凭证 code?

推荐答案

-- -------------------- ---- -------
----------
  ------------ -
    -- ---------- -
      -- ------- ----
      ----------------- ------- ----------
      -- --- ---- ----------- ------ - -----------
    - ---- -
      -------------------- ------------
    -
  --
  --------- -
    ----------------------- -----
  -
---

本题详细解读

wx.login 的作用

wx.login 是微信小程序提供的 API,用于获取用户的登录凭证 code。这个 code 是临时的,有效期通常为 5 分钟。开发者可以将这个 code 发送到自己的服务器,服务器再通过微信的接口(如 code2Session)用 code 换取用户的 openidsession_key

参数说明

  • success: 登录成功的回调函数,返回一个包含 code 的对象。
    • res.code: 登录凭证 code,用于换取 openidsession_key
    • res.errMsg: 如果登录失败,返回的错误信息。
  • fail: 登录接口调用失败的回调函数,返回错误信息。

使用场景

  • 用户登录:通过 wx.login 获取 code,然后发送到服务器进行登录验证。
  • 获取用户信息:结合 wx.getUserInfo 获取用户的详细信息。

注意事项

  • code 的有效期较短,通常为 5 分钟,因此需要在获取后尽快发送到服务器。
  • wx.login 不会弹出授权窗口,用户无感知。
  • 如果需要获取用户的敏感信息(如手机号、地址等),还需要结合 wx.getUserInfo 或其他相关 API。

示例代码

-- -------------------- ---- -------
----------
  ------------ -
    -- ---------- -
      -- - ---- ------
      ------------
        ---- --------------------------------
        ------- -------
        ----- -
          ----- --------
        --
        ----------------- -
          ------------------------ ---------------
        --
        --------- -
          ---------------------- -----
        -
      ---
    - ---- -
      -------------------- ------------
    -
  --
  --------- -
    ----------------------- -----
  -
---

在这个示例中,wx.login 获取到 code 后,通过 wx.requestcode 发送到服务器,服务器再通过微信的接口换取 openidsession_key

纠错
反馈