[英]Creating REST Web Services with Python
是否可以使用Python創建返回JSON或XML的REST Web服務?
你能給我一些重新定位嗎?
謝謝。
簡短回答:是的。 您當然可以使用Python,使用或不使用可用於該任務的多種工具之一:
在不了解您的要求的情況下,更大的答案是困難的(而且毫無意義)。 我建議您探索各種選項並自行決定。
看看RESTx 。 它是完全開源的,用Python編寫並在JVM中運行,因此您可以用Python或Java編寫自定義組件。 它專門用於創建RESTful Web服務。 組件是可重用的,您只需將新組件配置發送到服務器(通過簡單的RESTful API或在Web服務器中填寫小表單)即可創建新的RESTful Web服務。 我認為RESTx可能是創建RESTful Web服務的最快捷,最簡單的方法。
免責聲明:我是RESTx的首席開發人員。 所以,如果您有任何疑問,請告訴我。 我很樂意提供幫助。
我很驚訝沒人提到Flask的插件。 http://flask-restful.readthedocs.org/en/latest/
我沒有使用personaly(至少現在還沒有),但我對Flask的使用非常廣泛。 所以我不知道使用這個插件會出現什么問題。
當然,您可以使用任何您喜歡的Web框架,只需將content-type
標頭設置為您需要的mime類型。 為了生成json,我推薦使用simplejson
模塊(ranamed為json
並包含在自2.6之后的標准庫中),為了處理XML, lxml
庫非常好用。
要在Python中創建Web服務,最簡單的方法是使用Flask。 Flask是一個用Python編寫的流行Web框架,用於開發Web應用程序。
步驟1:打開任何文本編輯器並編寫以下代碼我將使用Atom,您可以在app.py文件中使用記事本或記事本++或任何其他編輯器。
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return "Hello World"
if __name__ == '__main__':
app.run()
這是一個簡單的Hello World程序。
第2步:
from flask import Flask, jsonify
app = Flask(__name__)
Student = [
{
'id': 1,
'firstName': 'Aditya',
'lastName': 'Malviya',
'age': '24'
},
{
'id': 2,
'firstName': 'Aman',
'lastName': 'Mehta',
'age': '25'
},
{
'id': 3,
'firstName': 'Nuclear',
'lastName': 'Geeks',
'age': '26'
}
]
@app.route('/Student/', methods=['GET'])
def get_Student():
return jsonify({'tasks': Student})
if __name__ == '__main__':
app.run()
所以我們在內存中創建了一個字典數組,這里我們有get_Student()函數,它將從我們的記憶中獲取所有學生。 這是GET請求的示例。 要運行上述副本並將其粘貼到瀏覽器“ http://127.0.0.1:5000/Student/ ”並按Enter鍵,您將獲得學生列表或在終端中輸入以下命令並按Enter鍵。
curl -i http:// localhost:5000 /學生/
你甚至可以查看鏈接https://nucleargeeks.wordpress.com/2018/08/31/rest-ing-with-flask/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.