簡體   English   中英

使用Python創建REST Web服務

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM