91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Falcon學習筆記2——修改響應狀態

發布時間:2020-06-21 16:49:16 來源:網絡 閱讀:335 作者:sushisuren 欄目:編程語言

本節嘗試從client發送json到服務器,然后服務器根據內容響應

1.測試客戶端發送與接收輸出
import json,falcon

class ObjRequestClass:
    def on_get(self,req,resp):
        resp.status = falcon.HTTP_200
        data = json.loads(req.stream.read())
        content = {
            'name':'falcon',
            'age':30
        }
        resp.body=json.dumps(data)

api = falcon.API()
api.add_route('/test',ObjRequestClass())

req.stream.read() #讀取客戶端請求內容

發送測試請求,我用httpie,喜歡用postman的在Body,raw中添加即可。

http get localhost:8080/test name="hello"

注意發送時用雙引號,不要用單引號。單引號會報錯。

一切正常能看到如下輸出:

HTTP/1.1 200 OK
Content-Length: 17
Content-Type: application/json
Date: Fri, 08 Nov 2019 03:39:59 GMT
Server: waitress

{
    "name": "hello"
}
2.嘗試根據發送內容獲取不同結果
{
"method":"get-name"
}
import json,falcon

class ObjRequestClass:
    def on_get(self,req,resp):
        resp.status = falcon.HTTP_200
        data = json.loads(req.stream.read())
        content = {
            'name':'falcon',
            'age':30
        }
        value={}
        if data["method"]=="get-name":
            value['value']=content['name']
        else:
            value['value']=None
        resp.body=json.dumps(value)

api = falcon.API()
api.add_route('/test',ObjRequestClass())

httpie測試

http get localhost:8080/test falcon_test:api method="get-name"  #結果正常
http get localhost:8080/test falcon_test:api method="get-names" #結果為null
3.添加不同http狀態
import json,falcon

class ObjRequestClass:
    def on_get(self,req,resp):
        resp.status = falcon.HTTP_200
        data = json.loads(req.stream.read())
        content = {
            'name': 'falcon',
            'age': 30
        }
        value = {}
        if "method" not in data: #檢測內容是否包含請求信息
            resp.status == falcon.HTTP_501 
        else:
            if data["method"] == "get-name":
                value['value'] = content['name']
            elif data["method"] == "get-age":
                value['age'] = content['age']
            else:
                resp.status = falcon.HTTP_404
                value['value'] = None

        resp.body = json.dumps(value)

api = falcon.API()
api.add_route('/test',ObjRequestClass())

req.stream 可用

['__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__
enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__lt__', '__ne__', '__new__', '__nex
t__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '_checkClosed', '_checkReadable', '_checkSeekable', '_checkWritable', 'close', 'c
losed', 'detach', 'fileno', 'flush', 'getbuffer', 'getvalue', 'isatty', 'read', 'read1', 'readable', 'readinto', 'readinto1', 'readline', 'readlines', 'seek', 'seekable', 'tell', 'truncate', 'writable', 'wr
ite', 'writelines']
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

盐城市| 甘肃省| 台湾省| 永顺县| 巨野县| 南汇区| 仁怀市| 中牟县| 孝义市| 民勤县| 亳州市| 洛宁县| 靖远县| 会东县| 玉田县| 山东省| 德阳市| 永仁县| 泉州市| 临沭县| 万安县| 潜江市| 贵溪市| 河南省| 金寨县| 高安市| 临城县| 兴隆县| 疏附县| 通城县| 突泉县| 麻栗坡县| 岳池县| 通许县| 新沂市| 固安县| 尖扎县| 连江县| 宁陕县| 福州市| 双流县|