网络请求
使用 http
对象中的 send
方法,您可以发送网络请求操作。注意该方法支持所有的请求方法,只需在第一位元素指定请求方法即可。
语法
- method 请求方法,如
GET
、POST
、PUT
、DELETE
等 - url 请求地址
- headers 请求头,如:{} 或 {'Authorization': 'Bearer ${token}'}
- body 请求体
js
http.send(method, url, headers, body)
返回值
该函数返回一个基本响应数据,包含以下内容:
status
响应状态码statusCode
响应状态码proto
协议版本protoMajor
协议主版本号protoMinor
协议次版本号contentLength
响应内容长度headers
响应头body
响应体
json
{
"status": "200 OK",
"statusCode": 200,
"proto": "HTTP/1.1",
"protoMajor": 1,
"protoMinor": 1,
"contentLength": "39",
"headers": {
"Access-Control-Allow-Credentials": ["true"],
"Access-Control-Allow-Headers": ["*"],
"Access-Control-Allow-Methods": ["*"],
"Access-Control-Allow-Origin": ["*"],
"Access-Control-Max-Age": ["86400"],
"Content-Type": ["application/json; charset=utf-8"],
"Date": ["Wed, 13 Dec 2023 08:22:33 GMT"],
"Content-Length": ["39"]
},
"body": "{\"code\":200,\"data\":null,\"message\":\"ok\"}"
}
代码示例
js
function main() {
const resp = http.send('GET', 'http://www.baidu.com/', {}, null)
if (resp == null) {
// 请求失败,例如 url 无效、无法访问等问题
return '请求失败'
}
if (resp.statusCode != 200) {
// 判断响应码是可选,例如 RESTful API 规范返回的响应码不一定是 200
return '请求失败'
}
return '请求成功,响应内容为:' + resp.body
}
响应内容永远是字符串类型,如果响应内容是 JSON 数据,您可以通过 JSON.parse
方法转换成 JavaScript 对象进行操作。