diff --git a/AUTHORS b/AUTHORS index 048ecf1c..15926383 100644 --- a/AUTHORS +++ b/AUTHORS @@ -23,3 +23,4 @@ Patches and Suggestions - Dave Challis (https://github.com/davechallis) - Florian Bruhin (https://github.com/The-Compiler) - Brett Randall (https://github.com/javabrett) +- Harold Ozouf (https://github.com/jspdown) diff --git a/Dockerfile b/Dockerfile index 819006bb..61b990fd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,7 +8,7 @@ LABEL org.kennethreitz.vendor="Kenneth Reitz" ENV LC_ALL=C.UTF-8 ENV LANG=C.UTF-8 -RUN apt update -y && apt install python3-pip git -y && pip3 install --no-cache-dir pipenv +RUN apt update -y && apt install python3-pip git -y && pip3 install --no-cache-dir pipenv==2022.4.8 ADD Pipfile Pipfile.lock /httpbin/ WORKDIR /httpbin diff --git a/httpbin/core.py b/httpbin/core.py index 305c9882..7e1018e6 100644 --- a/httpbin/core.py +++ b/httpbin/core.py @@ -99,8 +99,6 @@ def jsonify(*args, **kwargs): "

Run locally: $ docker run -p 80:80 kennethreitz/httpbin" ), "contact": { - "responsibleOrganization": "Kenneth Reitz", - "responsibleDeveloper": "Kenneth Reitz", "email": "me@kennethreitz.org", "url": "https://kennethreitz.org", }, @@ -110,7 +108,6 @@ def jsonify(*args, **kwargs): "host": "httpbin.org", # overrides localhost:5000 "basePath": "/", # base bash for blueprint registration "schemes": ["https"], - "protocol": "https", "tags": [ { "name": "HTTP Methods", @@ -543,7 +540,8 @@ def redirect_n_times(n): parameters: - in: path name: n - type: int + type: number + required: true produces: - text/html responses: @@ -585,7 +583,7 @@ def redirect_to(): required: true - in: query name: status_code - type: int + type: number post: consumes: - application/x-www-form-urlencoded @@ -596,7 +594,7 @@ def redirect_to(): required: true - in: formData name: status_code - type: int + type: number required: false patch: consumes: @@ -608,7 +606,7 @@ def redirect_to(): required: true - in: formData name: status_code - type: int + type: number required: false put: consumes: @@ -620,7 +618,7 @@ def redirect_to(): required: true - in: formData name: status_code - type: int + type: number required: false responses: 302: @@ -653,7 +651,8 @@ def relative_redirect_n_times(n): parameters: - in: path name: n - type: int + type: number + required: true produces: - text/html responses: @@ -683,7 +682,8 @@ def absolute_redirect_n_times(n): parameters: - in: path name: n - type: int + type: number + required: true produces: - text/html responses: @@ -708,7 +708,8 @@ def stream_n_messages(n): parameters: - in: path name: n - type: int + type: number + required: true produces: - application/json responses: @@ -737,6 +738,8 @@ def view_status_code(codes): parameters: - in: path name: codes + type: string + required: true produces: - text/plain responses: @@ -863,9 +866,11 @@ def set_cookie(name, value): - in: path name: name type: string + required: true - in: path name: value type: string + required: true produces: - text/plain responses: @@ -951,9 +956,11 @@ def basic_auth(user="user", passwd="passwd"): - in: path name: user type: string + required: true - in: path name: passwd type: string + required: true produces: - application/json responses: @@ -979,9 +986,11 @@ def hidden_basic_auth(user="user", passwd="passwd"): - in: path name: user type: string + required: true - in: path name: passwd type: string + required: true produces: - application/json responses: @@ -1005,8 +1014,7 @@ def bearer_auth(): parameters: - in: header name: Authorization - schema: - type: string + type: string produces: - application/json responses: @@ -1038,12 +1046,15 @@ def digest_auth_md5(qop=None, user="user", passwd="passwd"): name: qop type: string description: auth or auth-int + required: true - in: path name: user type: string + required: true - in: path name: passwd type: string + required: true produces: - application/json responses: @@ -1066,17 +1077,21 @@ def digest_auth_nostale(qop=None, user="user", passwd="passwd", algorithm="MD5") name: qop type: string description: auth or auth-int + required: true - in: path name: user type: string + required: true - in: path name: passwd type: string + required: true - in: path name: algorithm type: string description: MD5, SHA-256, SHA-512 default: MD5 + required: true produces: - application/json responses: @@ -1102,21 +1117,26 @@ def digest_auth( name: qop type: string description: auth or auth-int + required: true - in: path name: user type: string + required: true - in: path name: passwd type: string + required: true - in: path name: algorithm type: string description: MD5, SHA-256, SHA-512 default: MD5 + required: true - in: path name: stale_after type: string default: never + required: true produces: - application/json responses: @@ -1201,7 +1221,8 @@ def delay_response(delay): parameters: - in: path name: delay - type: int + type: number + required: true produces: - application/json responses: @@ -1298,6 +1319,7 @@ def decode_base64(value): name: value type: string default: SFRUUEJJTiBpcyBhd2Vzb21l + required: true produces: - text/html responses: @@ -1320,8 +1342,10 @@ def cache(): parameters: - in: header name: If-Modified-Since + type: string - in: header name: If-None-Match + type: string produces: - application/json responses: @@ -1351,10 +1375,16 @@ def etag(etag): tags: - Response inspection parameters: + - in: path + name: etag + type: string + required: true - in: header name: If-None-Match + type: string - in: header name: If-Match + type: string produces: - application/json responses: @@ -1391,7 +1421,8 @@ def cache_control(value): parameters: - in: path name: value - type: integer + type: number + required: true produces: - application/json responses: @@ -1428,7 +1459,8 @@ def random_bytes(n): parameters: - in: path name: n - type: int + type: number + required: true produces: - application/octet-stream responses: @@ -1459,7 +1491,8 @@ def stream_random_bytes(n): parameters: - in: path name: n - type: int + type: number + required: true produces: - application/octet-stream responses: @@ -1503,7 +1536,8 @@ def range_request(numbytes): parameters: - in: path name: numbytes - type: int + type: number + required: true produces: - application/octet-stream responses: @@ -1593,10 +1627,12 @@ def link_page(n, offset): parameters: - in: path name: n - type: int + type: number + required: true - in: path name: offset - type: int + type: number + required: true produces: - text/html responses: