uniapp不用封装直接请求
时间: 2023-08-13 18:09:25 浏览: 143
在uniapp中,你可以直接使用内置的uni.request方法进行请求而不需要进行封装。你可以通过以下代码示例进行请求:
```javascriptuni.request({
url: '/api/add',
method: 'post',
data: {
deviceId: this.deviceCode,
deviceName: this.deviceName },
success: res => {
console.log(res.data); // 打印请求返回的数据 },
fail: error => {
console.log(error);
}
});
```
这样就可以直接发送请求,无需进行封装。
相关问题
uniapp如何封装接口请求
在uniapp中,可以使用封装好的uni.request()函数来发送HTTP请求。为了方便管理和维护,可以将接口请求封装在一个单独的模块中,例如一个api.js文件。下面是一个简单的示例:
```javascript
// api.js
const baseUrl = 'https://example.com/api';
function request(url, method, data) {
return new Promise((resolve, reject) => {
uni.request({
url: baseUrl + url,
method: method,
data: data,
success: (res) => {
resolve(res.data);
},
fail: (err) => {
reject(err);
}
});
});
}
export function login(data) {
return request('/login', 'POST', data);
}
export function getUserInfo() {
return request('/user/info', 'GET');
}
// 在其他文件中使用
import { login, getUserInfo } from '@/api';
login({ username: 'test', password: '123456' }).then((res) => {
console.log(res);
});
getUserInfo().then((res) => {
console.log(res);
});
```
在上面的示例中,我们定义了一个baseUrl常量和一个request()函数,用于发送HTTP请求。然后,我们将login()和getUserInfo()函数导出,这些函数分别对应不同的接口。最后,在其他文件中使用import引入这些函数,并调用它们即可。这样,我们就可以方便地管理和维护接口请求了。
uniapp ts封装request请求
在uniapp中,可以使用TypeScript来封装request请求。以下是一个示例:
首先,在utils文件夹下创建一个httpRequest.ts文件,内容如下:
```typescript
const BASE_URL = 'https://xxx.online/prod-api/'
export const request = (url: string, method: string, data: any) => {
return new Promise((resolve, reject) => {
uni.request({
url: BASE_URL + url,
data: data,
method: method,
header: {
token: uni.getStorageSync('token') != null ? uni.getStorageSync('token') : ''
},
success: (res) => {
resolve(res)
},
fail: (error) => {
reject(error)
}
})
})
}
export default request
```
然后,在main.ts文件中引入request:
```typescript
import Vue from 'vue'
import { request } from "./utils/httpRequest.ts"
Vue.prototype.request = request
```
这样就完成了uniapp中使用TypeScript封装request请求的过程。你可以根据自己的需求进行修改和扩展。
阅读全文