亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

宁乡县| 金华市| 宜君县| 寿宁县| 武乡县| 襄垣县| 大厂| 阿拉尔市| 海丰县| 侯马市| 渭南市| 龙口市| 房产| 古蔺县| 敦化市| 隆林| 樟树市| 织金县| 承德市| 永新县| 湖南省| 景泰县| 双鸭山市| 奉化市| 五指山市| 台湾省| 杭州市| 定远县| 明光市| 巴彦县| 科尔| 乐业县| 汉川市| 涪陵区| 康平县| 塘沽区| 绥阳县| 禹州市| 宽城| 海安县| 姚安县|