鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

目錄:
1.承接上篇鴻蒙客戶端上傳文件
2.域名通過內網穿透工具
3.python服務器端代碼
4.鴻蒙手機的界面和業務邏輯
5.《鴻蒙的js開發模式》系列文章合集

 

1.承接上篇鴻蒙客戶端上傳文件,呈上啟下,鴻蒙手機下載python服務器端的文件到鴻蒙手機客戶端,具體的實現邏輯如下:

 

初始化條件: 首先導入request對象模塊,import request from ‘@system.request’;  設置網絡權限:在config.json文件中設置     ohos.permission.INTERNET,同時我們是用http協議訪問的,設置域名協議操作:

鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

 

2.域名通過內網穿透工具,也可以使用其它內網穿透工具,穿透的端口和python服務器端的端口一致

鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

 

 

鴻蒙的js開發模式19:鴻蒙手機下載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.鴻蒙手機的界面和業務邏輯如下:

鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

界面構建代碼:

<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: '//gjpwwj.natappfree.cc/download',
            success: function(data) {
                console.log('call success callback success: ' + data.token);

            },
            fail: function(data, code) {
                console.log('handling fail');
            },
        });
    }
}

執行下載,鴻蒙會以通知欄消息通知下載文件成功:

鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

 

點擊通知欄,就能預覽下載的文件:

鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

通過Hilog日誌工具,也可以看到下載成功的信息:

鴻蒙的js開發模式19:鴻蒙手機下載python服務器端文件的實現

 

鴻蒙的時代已經到來,積極擁抱,張榮超老師昨天的第一課講的很好,一起加油!

作者:六合李欣

想了解更多內容,請訪問51CTO和華為合作共建的鴻蒙社區://harmonyos.51cto.com/

Tags: