Files
2026-07-13 12:32:21 +08:00

38 lines
1.1 KiB
Python
Executable File

#!/usr/bin/env python3
import os
import kong_pdk.pdk.kong as kong
Schema = (
{"message": {"type": "string"}},
)
version = '0.1.0'
priority = 100
# This is an example plugin that add a header to the response
class Plugin(object):
def __init__(self, config):
self.config = config
def access(self, kong: kong.kong):
host, err = kong.request.get_header("host")
if err:
pass # error handling
# if run with --no-lua-style
# try:
# host = kong.request.get_header("host")
# except Exception as ex:
# pass # error handling
message = "hello"
if 'message' in self.config:
message = self.config['message']
kong.response.set_header("x-hello-from-python", "Python says %s to %s" % (message, host))
kong.response.set_header("x-python-pid", str(os.getpid()))
# add below section to allow this plugin optionally be running in a dedicated process
if __name__ == "__main__":
from kong_pdk.cli import start_dedicated_server
start_dedicated_server("py-hello", Plugin, version, priority, Schema)