图片来源:黑马程序员 bz
三方库中心:ohpm.openharmony.cn/#/cn/home
本地服务端启动
- 端口 shopServer/bin/www
var port = normalizePort(process.env.PORT || '3000');
app.set('port', port);
- npm start
- npm install 如果报错少依赖(装所有列在
package.json
文件中的依赖项。) - 测试网址: http://localhost:3000/shops?pageNo=1&pageSize=2
基于ohos的http模块实现-异步-查询商铺
/**
* 基于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('查询商铺失败1')
}
})
.catch(error => {
console.log('testTag', '查询商铺信息失败!error:', JSON.stringify(error))
reject('查询商铺失败2')
})
})
}
使用:
loadShopInfoSync() {
ShopModel.getShopListByHttp()
.then(shops => {
shops.forEach((s) => {
console.log("loadShopInfoSync s==", s)
})
})
.catch((error) => {
console.error("error", JSON.stringify(error)) });
}
安装 第三方库 axios
- 如果 mac 命令行无法执行。--》EVO Studio Terminal 执行。
- 如果下载失败。配置:oh-package.json5 和 oh-package-lock.json5
oh-package.json5: 中
"dependencies": {
"@ohos/axios": "^2.1.1"
},
oh-package-lock.json5:中
"packages": {
"@ohos/hypium@1.0.6": {
"resolved": "https://repo.harmonyos.com/ohpm/@ohos/hypium/-/hypium-1.0.6.tgz",
"integrity": "sha512-bb3DWeWhYrFqj9mPFV3yZQpkm36kbcK+YYaeY9g292QKSjOdmhEIQR2ULPvyMsgSR4usOBf5nnYrDmaCCXirgQ=="
},
}
axios文档:ohpm.openharmony.cn/#/cn/detail…