鍍金池/ 問(wèn)答/Python  網(wǎng)絡(luò)安全  HTML/ Flask服務(wù)是web service嗎?為何沒(méi)有生成WSDL文件?服務(wù)采用什么

Flask服務(wù)是web service嗎?為何沒(méi)有生成WSDL文件?服務(wù)采用什么協(xié)議進(jìn)行傳輸?

剛開(kāi)始使用FLASK,請(qǐng)問(wèn)用它做出來(lái)的服務(wù)屬于web service嗎?如果是,問(wèn)什么flask服務(wù)沒(méi)有生成WSDL文件?看到https://pypi.org/project/Flas... Spyne 可以為flask提供WSDL,SOAP等支持,什么情況下需要使用到這些支持?

回答
編輯回答
巴扎嘿
1. Flask是一個(gè)使用Python編寫的輕量級(jí)Web應(yīng)用框架?;?Werkzeug WSGI 工具箱和 Jinja2 模板引擎。
2. Web service 是一種服務(wù)導(dǎo)向架構(gòu)的技術(shù),通過(guò)標(biāo)準(zhǔn)的 Web 協(xié)議提供服務(wù),目的是保證不同平臺(tái)的應(yīng)用服務(wù)可以互操作。
3. SOAP 是一個(gè)基于 XML 的可擴(kuò)展消息信封格式,需同時(shí)綁定一個(gè)網(wǎng)絡(luò)傳輸協(xié)議。這個(gè)協(xié)議通常是 HTTP 或 HTTPS,但也可能是 SMTP 或 XMPP。
4. WSDL 不是 SOAP 服務(wù)端點(diǎn)的必要條件,但目前基于 Java 的主流 WEB 服務(wù)開(kāi)發(fā)框架往往需要 WSDL 實(shí)現(xiàn)客戶端的源代碼生成。

以上四點(diǎn)是從維基百科上抄下來(lái)的。
所以:
Flask 默認(rèn)不會(huì)生成 WSDL 文件。
Flask 可以通過(guò)一些插件實(shí)現(xiàn) web service 中生成 WSDL 的功能,比如你提到的 Spyne,具體例子在 Flask-Spyne 可以看到。
WSDL 文件究其本質(zhì)是一個(gè) XM L格式的文件,內(nèi)部包含 web service api 接口的信息,可以通過(guò) WSDL 格式的文件輔助生成一些 Java 的 web service 服務(wù)器和客戶端代碼。

2018年9月14日 06:53