目录:
1.承接上篇鸿蒙客户端上传文件
2.域名通过内网穿透工具
3.python服务器端代码
4.鸿蒙手机的界面和业务逻辑
5.《鸿蒙的js开发模式》系列文章合集

1.承接上篇鸿蒙客户端上传文件,呈上启下,鸿蒙手机下载python服务器端的文件到鸿蒙手机客户端,具体的实现逻辑如下:

初始化条件: 首先导入request对象模块,import request from '@system.request';  设置网络权限:在config.json文件中设置     ohos.permission.INTERNET,同时我们是用http协议访问的,设置域名协议操作:

2.域名通过内网穿透工具,也可以使用其它内网穿透工具,穿透的端口和python服务器端的端口一致

3.python服务器端代码如下:

from  flask  import Flask
from flask import jsonify
from flask import request
import json
import random
from flask import send_from_directory @app.route("/download")
def index():
print("执行文件的下载")
return send_from_directory(r"D:\image\images",filename="a0.jpg",as_attachment=True) if __name__=="__main__":
app.run(debug=True,port=8500)

4.鸿蒙手机的界面和业务逻辑如下:

界面构建代码:

<div class="container">
<div class="downview" onclick="downoperator"><text class="tvview">下载文件</text></div> </div>

js业务逻辑代码如下:

import prompt from '@system.prompt';
import request from '@system.request';
export default {
data: {
title: 'World'
},
downoperator()
{
prompt.showToast({
message:"执行下载文件",
duration:8000 }); request.download({
url: 'http://gjpwwj.natappfree.cc/download',
success: function(data) {
console.log('call success callback success: ' + data.token); },
fail: function(data, code) {
console.log('handling fail');
},
});
}
}

执行下载,鸿蒙会以通知栏消息通知下载文件成功:

点击通知栏,就能预览下载的文件:

通过Hilog日志工具,也可以看到下载成功的信息:

鸿蒙的时代已经到来,积极拥抱,张荣超老师昨天的第一课讲的很好,一起加油!

作者:六合李欣

想了解更多内容,请访问51CTO和华为合作共建的鸿蒙社区:https://harmonyos.51cto.com/

最新文章

  1. WCF学习之旅—WCF服务部署到应用程序(十)
  2. UITableViewCell 多选和全选(checkBoxCell)
  3. div+css模仿登录界面
  4. selec2 clone不起作用。
  5. REDHAT4.8安装yum
  6. win8.1上安装vc6
  7. 面试题_66_to_75_Java IO 和 NIO 的面试题
  8. Android:WebView深入使用
  9. margin、padding单位百分比
  10. 新安装的soapui启动时报错及解决方法
  11. Python模拟登录成功与失败处理方式(不涉及前端)
  12. 实现A-Z滑动检索菜单
  13. 利用sqoop对mysql执行DML操作
  14. 排序(Sort)-----插入排序
  15. V8源码边缘试探-黑魔法指针偏移
  16. Linux中断(interrupt)子系统之四:驱动程序接口层 &amp; 中断通用逻辑层【转】
  17. 解决Android SDK Manager更新时出现问题
  18. Laravel学习之旅(一)
  19. SymbolTable
  20. String对象内存分析

热门文章

  1. Codeforces Round #304 (Div. 2) D - Soldier and Number Game
  2. POJ-3984 迷宫问题 (BFS)
  3. 80x86/Pentium微机原理及接口技术-微处理器-学习笔记
  4. Linux-单用户/救援模式
  5. 如何加入VNT Hubble主网
  6. ACM-ICPC 2018 徐州赛区网络预赛 B BE, GE or NE 【模拟+博弈】
  7. yarn global add !== yarn add global
  8. WiFi 6 &amp; 5G
  9. 比特币等主流货币走势成谜,VAST深受关注
  10. 同样是NGK官方推出的代币,SPC与BGV有何异同?