title: Taro.request(option)

sidebar_label: request

Initiates an HTTPS request. Read related instructions before use.

Data Parameters

The data ultimately sent to the server must be a String. If the passed data is not a String, it will be converted to the String type according to the following rules:

  • Data from the GET method is converted to a query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...).

  • Data from the POST method with header['content-type'] being application/json is serialized into the JSON format.

  • Data from the POST method with header['content-type'] being application/x-www-form-urlencoded is converted to a query string (encodeURIComponent(k)=encodeURIComponent(v)&encodeURIComponent(k)=encodeURIComponent(v)...)

Reference

Type

  1. <T = any, U = any>(option: Option<U>) => RequestTask<T>

Parameters

Option

Property Type Default Required Description
url string Yes Developer server API URL
data U No Request parameter
dataType "json" | "other" No The returned data format
header Record<string, any> No Sets request Header. Referer is not available in Header.

content-type is application/jsonby default.
method "OPTIONS" | "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "TRACE" | "CONNECT" No HTTP request method
responseType "text" | "arraybuffer" No The response data format
jsonp boolean false No Specify whether to use jsonp to fetch data on the H5 side
jsonpCache boolean false No Specifies whether data fetched using jsonp should be cached on the H5 side
mode "no-cors" | "cors" | "same-origin" same-origin No Specifies whether cross-domain requests are allowed on the H5 side
credentials "same-origin" | "include" | "omit" omit No Specify whether to carry cookies on the H5 side
cache "default" | "no-cache" | "reload" | "force-cache" | "only-if-cached" default No Specify the cache mode on the H5 side
timeout number 2000 No Specify the request timeout on the H5 side
retryTimes number 2 No Specify the number of request retries on the H5 side
backup string | string[] No Specify the backup requestion for requests on the H5 side
dataCheck () => boolean No Specify the data validation function for the request response on the H5 side, and if the result is false, request backup requestion.
useStore boolean false No Specify whether the request on the H5 side uses caching.
storeCheckKey string No Set the key for the request cache checks on the H5 side
storeSign string No Set the request cache signature on the H5 side
storeCheck () => boolean No Set the request checksum function on the H5 side, generally not required
complete (res: CallbackResult) => void No The callback function used when the API call completed (always executed whether the call succeeds or fails)
fail (res: CallbackResult) => void No The callback function for a failed API call
success (res: CallbackResult) => void No The callback function for a successful API call

SuccessCallbackResult

Property Type Description
data T Data returned by the developer server
header Record<string, any> HTTP Response Header returned by the developer server
statusCode number HTTP status code returned by the developer server
errMsg string Call result

dataType

Valid values of object.dataType

Value Description
json The returned data is in the JSON format. Call JSON.parse on the returned data.
Others Do not call JSON.parse on the returned data.

method

Valid values of object.method

Value Description
OPTIONS HTTP request OPTIONS
GET HTTP request GET
HEAD HTTP request HEAD
POST HTTP request POST
PUT HTTP request PUT
DELETE HTTP request DELETE
TRACE HTTP request TRACE
CONNECT HTTP request CONNECT

responseType

Valid values of object.responseType

Value Description
text The response data is in the text format.
arraybuffer The response data is in the ArrayBuffer format.

cors_mode

Valid values of CORS mode

Value Description
no-cors Cross-domain requests will get an opaque response
cors Allow cross-domain requests
same-origin Requests are always made to the current source

credentials

Valid values of credentials

Value Description
include Always send authentication information such as cookies, HTTP Basic authentication, etc. local to the requested resource domain.
same-origin Authentication information such as cookies, HTTP Basic authentication, etc. is only sent if the URL is the same source as the response script.
omit No cookies are sent.

Sample Code

Example 1

  1. Taro.request({
  2. url: 'test.php', // This value for demonstration purposes only is not a real API URL.
  3. data: {
  4. x: '',
  5. y: ''
  6. },
  7. header: {
  8. 'content-type': 'application/json' // Default value
  9. },
  10. success: function (res) {
  11. console.log(res.data)
  12. }
  13. })

Example 2

  1. const res = await Taro.request(params)

API Support

API WeChat Mini-Program Baidu Smart-Program Alipay Mini-Program ByteDance Mini-Program QQ Mini-Program H5 React Native
Taro.request ✔️ ✔️ ✔️ ✔️ ✔️ ✔️ ✔️