如何使用 wx.request 发起 POST 请求?

推荐答案

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

本题详细解读

1. wx.request 的基本用法

wx.request 是微信小程序中用于发起网络请求的 API。它支持多种请求方法,包括 GETPOSTPUTDELETE 等。在本题中,我们使用 POST 方法向服务器发送数据。

2. 参数解析

  • url: 请求的目标 URL,必须是一个完整的 HTTP 或 HTTPS 地址。
  • method: 请求方法,本题中设置为 POST
  • data: 请求的参数,通常是一个对象。在 POST 请求中,这些数据会被发送到服务器。
  • header: 请求头设置,通常用于指定请求的内容类型。在本题中,我们设置为 'application/json',表示发送的数据是 JSON 格式。
  • success: 请求成功后的回调函数,参数 res 包含服务器返回的数据。
  • fail: 请求失败后的回调函数,参数 err 包含错误信息。

3. 注意事项

  • 跨域问题: 微信小程序的网络请求默认只能访问配置在 request 合法域名列表中的地址。如果请求的 URL 不在合法域名列表中,请求会失败。
  • 数据格式: 如果 header 中的 content-type 设置为 'application/json',则 data 参数会自动被序列化为 JSON 字符串。如果需要发送表单数据,可以将 content-type 设置为 'application/x-www-form-urlencoded'
  • 异步处理: wx.request 是异步操作,因此需要在 successfail 回调中处理请求结果。

4. 示例代码解析

在示例代码中,我们向 https://example.com/api/submit 发起了一个 POST 请求,并发送了两个参数 key1key2。请求头设置为 'application/json',表示发送的数据是 JSON 格式。请求成功后,服务器返回的数据会通过 res.data 传递给 success 回调函数。如果请求失败,错误信息会通过 err 传递给 fail 回调函数。

纠错
反馈