鴻蒙的js開發模式19:鴻蒙手機下載python伺服器端檔案的實現

HarmonyOS技術社群發表於2021-03-04

目錄:
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: 'http://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和華為合作共建的鴻蒙社群:https://harmonyos.51cto.com/

相關文章