色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

如何降低python開發的項目代碼泄露風險?

李中冰2年前17瀏覽0評論

python屬于腳本語言,解釋型語言,在python環境中,直接運行py文件就可以看到結果,如果項目直接發布出去,那就是在“裸奔”。所以很有必要對項目代碼加密。

一、先睹為快,看看一個項目發布的時候,只有幾個文件,

main.py項目程序入口

setting.py項目配置

apps項目模塊

plusins項目插件目錄

項目發布目錄一覽

二、創建項目

創建項目pymodcreatedemo1

cddemo1

創建模塊pymodaddmod1

啟動pycharm開始編寫功能模塊

一個模塊默認由三個文件組成

__init__.py、handlers.py、param_schemas.py

業務邏輯主要在handlers.py中編寫

__init__.py

frompymod.blueprintimportBlueprintapi=Blueprint("/mod1")from.handlersimport*

param_schemas.py

schema_sfz={"type":"object","required":["sfz","nl"],"properties":{"sfz":{"type":"string","minLength":18,"maxLength":18,"description":"身份證明號碼"},"nl":{"type":"integer","minimum":0,"maximum":150,"description":"年齡"}}}

handlers.py

from.importapifrompymod.extimportRequestHandler,params_validate,TrueResponse,FalseResponsefrom.param_schemasimportschema_sfzfrompymod.pluginsimportsfz_check@api.add_route('/hello')classHello(RequestHandler):defget(self):self.write('HelloWorld')@params_validate(schema_sfz)defpost(self):sfz=self.get_json_arg("sfz")nl=self.get_json_arg("nl")#self.write(TrueResponse(sfz=sfz,nl=nl))ifsfz_check.check_sfzmhm(sfz):self.write(TrueResponse(hint="身份證明號碼驗證通過"))else:self.write(FalseResponse(hint="身份證明號碼驗證失敗"))

三、項目部署

程序調試修改setting.py

#開發模式下運行的模塊名稱必須填寫

modules=["mod1"]modules_config={"mod1":{"deny_ip":"","allow_ip":"*"}}

啟動程序pythonmain.py

調試沒有問題,進入發布模式

在項目目錄下

pymodpackmod1

在target目錄下生成mod1.mod文件,將其復制到apps目錄中

修改setting.py

#開發模式下運行的模塊名稱必須填寫

modules=[]

再次運行pythonmain.py測試

一切OK,系統就可以發布了。

pymod使用指南,訪問https://pymod.cn