python介面服務兩種方式(被呼叫 主動推送)

2021-10-06 15:36:01 字數 1381 閱讀 7033

專案中用python開發,要對外介面時,根據場景不同,一般有兩種方式:

1)外部呼叫python介面,返回資料

2)介面主動向外部推送資料

1)外部呼叫python介面,返回資料

這種方式一般可以通過http介面,定義介面的ip和埠,外部通過ip和埠呼叫,呼叫的程式再返回結果。

介面服務**如下:

import flask

import json

from flask import request

'''flask: web框架,通過flask提供的裝飾器@server.route()將普通函式轉換為服務

登入介面,需要傳url、username、passwd

'''# 建立乙個服務,把當前這個python檔案當做乙個服務

server = flask.flask(__name__)

@server.route('/login', methods=['get', 'post'])

def login():

# 獲取通過url請求傳參的資料

usename = request.args.get('name')

password = request.args.get('pwd')

#這裡可以加入核心功能**

resu = #返回資料

return json.dumps(resu, ensure_ascii=false) # 將字典轉換為json串, json是字串

if __name__ == '__main__':

server.run(debug=true, port=80, host='0.0.0.0')# 指定埠、host設為0.0.0.0代表不管幾個網絡卡,任何ip都可以訪問

2)介面主動向外部推送資料

介面對外主動反饋資料的方式也有多種實現方式,其中python中requests庫提供了非常方便的介面可以直接用。

**如下:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import requests

import json

import datetime

url = '推送資料的目標**'

body =

response = requests.post(url, data = json.dumps(body), headers = headers)

print(response.text, response.status_code)

c 呼叫介面的兩種方式

1 get請求型別介面呼叫 public jobject getdate string url 處理介面返回的jobject資料 資料結構 獲取返回訊息 jobject obj getdate url obj message tostring 請求成功 獲取資料詳情,jarray jar jarra...

python的兩種退出方式

os.exit 會直接將python程式終止,之後的所有 都不會繼續執行。sys.exit 會引發乙個異常 systemexit,如果這個異常沒有 獲,那麼python直譯器將會退出。如果有捕獲此異常的 那麼這些 還是會執行。1 importos2 3try 4 os.exit 0 5except ...

Python的兩種執行方式

python是由guido van rossum於1989年底發明的,1989年聖誕節期間,在阿姆斯特丹,guido為了打發聖誕節的無趣,決心開發乙個新的指令碼解釋程式,做為abc 語言的一種繼承。之所以選中python 大蟒蛇的意思 作為程式的名字,是因為他是乙個叫monty python的喜劇團...