{{item.content}}
摘要:讀取文件內容并通過接口給前端使用常規的開發是在服務器端根據動態生成這里還是采取前后端分離思想,通過讀取文件數據,通過接口給前端調用。之所以采取讀取文檔并返回給前端而不是其他語言主要是因為比較火熱,應用面廣。
python讀取文件內容并通過接口給前端使用
常規的python web開發是在服務器端根據url動態生成html
這里還是采取前后端分離思想,通過python讀取文件數據,通過接口給前端調用。
注意事項
確保python版本為3.x
框架選型:
Django:全能型Web框架;
Flask:輕量實用的Web框架;
web.py:一個小巧的Web框架;
Bottle:和Flask類似的Web框架;
Tornado:Facebook的開源異步Web框架。
只是實現一個小工具實用Flask就好
安裝方式
pip install flask初衷和思路
博客的文章管理方式大體分兩種:靜態html、動態加載。動態加載文章一般通過數據庫存取,為了簡化此過程,就想通過直接加載文件的方式。
markdown語法在寫文章上很受開發者青睞,因此直接加載md文件就比較便于維護。
現行方案中
github采用的后端加載方式,已有的一種前端直接加載md文件的方式是vue-markdown-loader
對此方式感興趣可以直接采用這種loader方式,以下內容就可以忽略了。
之所以采取python讀取文檔并返回給前端而不是其他語言主要是因為python比較火熱,應用面廣。作為一枚小前端果斷選擇python來研究學習,這個小項目也是用來練練手。
注:md文章放在項目./static下就好
1.注冊接口,綁定處理函數
2.接收前端傳遞的參數(文件名)
3.讀取文件,返回到前端
代碼如下:python代碼就是簡潔
@app.route("/getdata/md", methods=["post"]) def ajax_test_add(): params = request.get_json() childPath = params.get("title") if(params.get("title") == None): print("未傳title字段!") return json.dumps({"resCode":"4001","msg":"參數錯誤title為必傳"}) else: path = "./static" + childPath + ".md" try: f_name = open(path, "r", encoding="UTF-8").read() print(f_name) # 成功獲取到md文件內容啦 return json.dumps({"content":f_name,"resCode":2000}) except OSError as reason: print("讀取文件出錯了T_T") print("出錯原因是%s" % str(reason)) return json.dumps({"err": str(reason),"resCode":5000})
問題總結
跨域問題
from flask_cors import CORS
CORS(app, resources=r"/*")
r"/*" 是通配符,讓本服務器所有的URL 都允許跨域請求
主機端口號設置
app.run(host = "0.0.0.0", port = 9001, debug = True)
前端代碼{{item.title}}
{{item.content}}
在點擊文章標題是,獲取data-id屬性的值,該值即為傳給后端的文件名。
前端調用的接口地址:http://hostname:9001/getdata/md
請求方式:POST
必傳參數:{"title": 文章名(不用加后綴)},該文章要放在python項目的./static目錄下
源碼:https://github.com/idongchen/docs/blob/master/example/getfile.py
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/42151.html
摘要:讀取文件內容并通過接口給前端使用常規的開發是在服務器端根據動態生成這里還是采取前后端分離思想,通過讀取文件數據,通過接口給前端調用。之所以采取讀取文檔并返回給前端而不是其他語言主要是因為比較火熱,應用面廣。 python讀取文件內容并通過接口給前端使用 常規的python web開發是在服務器端根據url動態生成html這里還是采取前后端分離思想,通過python讀取文件數據,通過接口...
摘要:讀取文件內容并通過接口給前端使用常規的開發是在服務器端根據動態生成這里還是采取前后端分離思想,通過讀取文件數據,通過接口給前端調用。之所以采取讀取文檔并返回給前端而不是其他語言主要是因為比較火熱,應用面廣。 python讀取文件內容并通過接口給前端使用 常規的python web開發是在服務器端根據url動態生成html這里還是采取前后端分離思想,通過python讀取文件數據,通過接口...
摘要:入門,第一個這是一門很新的語言,年前后正式公布,算起來是比較年輕的編程語言了,更重要的是它是面向程序員的函數式編程語言,它的代碼運行在之上。它通過編輯類工具,帶來了先進的編輯體驗,增強了語言服務。 showImg(https://segmentfault.com/img/bV1xdq?w=900&h=385); 新的一年不知不覺已經到來了,總結過去的 2017,相信小伙們一定有很多收獲...
閱讀 3527·2021-10-09 09:41
閱讀 2733·2021-10-08 10:18
閱讀 2164·2021-09-10 10:51
閱讀 2668·2021-09-10 10:50
閱讀 763·2021-09-09 09:33
閱讀 3369·2021-09-06 15:14
閱讀 3002·2019-08-30 11:06
閱讀 3230·2019-08-29 14:04