赞
踩
HTTP数据请求:通过HTTP发起一个数据请求。
WebSocket连接:使用WebSocket建立服务器与客户端的双向连接。
Socket连接: 通过Socket进行数据传输。
源码https://gitee.com/cheng_yong_xu/hongmeng-os
访问http://localhost:3000/shops
看到上面,即使服务器开启,没有问题
我们需要使用Promise
下面是配置环境变量
直接在命令行就可以运行了
OpenHarmony三方库中心仓https://ohpm.openharmony.cn/#/cn/home
// 安装axios
ohpm install @ohos/axios
// entry/src/main/ets/model/ShopModel.ts import http from '@ohos.net.http'; import { Axis } from '@ohos.multimodalInput.mouseEvent'; import ShopInfo from '../viewmodel/ShopInfo'; import axios from '@ohos/axios' class ShopModel { baseURL: string = 'http://localhost:3000' pageNo: number = 1 /** * 基于axios实现异步查询商铺 * @returns */ getShopListByAxios(): Promise<ShopInfo[]> { return new Promise((resolve, reject) => { axios.get( `${this.baseURL}/shops`, { params: { pageNo: this.pageNo, pageSize: 3 } } ) .then(resp => { if(resp.status === 200) { // 查询成功 console.log('testTag', '查询商铺成功!', JSON.stringify(resp.data)) resolve(resp.data) } else { console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(resp)) reject('查询商铺失败') } }) .catch(error => { console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(error)) reject('查询商铺失败') }) }) } /** * 基于ohos的http模块实现异步查询商铺 * @returns */ getShopListByHttp(): Promise<ShopInfo[]> { return new Promise((resolve, reject) => { // 1.创建http请求对象 let httpRequest = http.createHttp() // 2.发送请求 httpRequest.request( `${this.baseURL}/shops?pageNo=${this.pageNo}&pageSize=3`, { method: http.RequestMethod.GET } ) .then(resp => { if(resp.responseCode === 200) { // 查询成功 console.log('testTag', '查询商铺成功!', resp.result) resolve(JSON.parse(resp.result.toString())) }else { console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(resp)) reject('查询商铺失败') } }) .catch(error => { console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(error)) reject('查询商铺失败') }) }) } /** * 基于axios实现同步查询商铺 * @returns */ async getShopListByAxiosAsync(): Promise<ShopInfo[]> { // 1.发送请求\ let resp = await axios.get( `${this.baseURL}/shops`, { params: { pageNo: this.pageNo, pageSize: 3 } } ) // 2.处理响应 if (resp.status === 200) { // 查询成功 console.log('testTag', '查询商铺成功!', JSON.stringify(resp.data)) return resp.data; } // 查询失败 console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(resp)) } /** * 基于ohos的http模块实现同步查询商铺 * @returns */ async getShopListByHttpAsync(): Promise<ShopInfo[]> { // 1.创建http的请求对象 let httpRequest = http.createHttp() // 2.发送请求 let resp = await httpRequest.request( `${this.baseURL}/shops?pageNo=${this.pageNo}&pageSize=3`, { method: http.RequestMethod.GET } ) // 3.处理响应 if (resp.responseCode === 200) { // 查询成功 console.log('testTag', '查询商铺成功!', resp.result) return JSON.parse(resp.result.toString()); } console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(resp)) } } const shopModel = new ShopModel(); export default shopModel as ShopModel;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。