提交 5d0fa77932429396c309d8ae15066b26649ff48a

作者 LJH 李佳桓
1 个父辈 92af64d1

add

正在显示 1 个修改的文件 包含 62 行增加0 行删除
  1 +# coding=utf-8
  2 +"""" Simple DEBUG SERVICE plugin
  3 +
  4 +http://localhost:8080/cgi-bin/qgis_mapserv.cgi?SERVICE=DEBUG
  5 +
  6 +.. note:: This program is free software; you can redistribute it and/or modify
  7 + it under the terms of the GNU General Public License as published by
  8 + the Free Software Foundation; either version 2 of the License, or
  9 + (at your option) any later version.
  10 +
  11 +"""
  12 +
  13 +__author__ = 'wanzhongping'
  14 +__date__ = '2021-04-20'
  15 +__copyright__ = 'chinadci'
  16 +
  17 +
  18 +import os
  19 +from dmap_server import *
  20 +
  21 +
  22 +class DebugFilter(DmpServerFilter):
  23 +
  24 + def request_ready(self):
  25 + handler = self.server_interface().request_handler()
  26 + params = handler.parameters()
  27 + if len(params) == 0:
  28 + return
  29 + if 'DEBUG' in params:
  30 + handler.set_parameter('SERVICE', 'DEBUG')
  31 + print("request_ready")
  32 +
  33 + def response_complete(self):
  34 + handler = self.server_interface().request_handler()
  35 + params = handler.parameters()
  36 + if len(params) == 0:
  37 + return
  38 + if params['service'] != 'DEBUG':
  39 + return
  40 +
  41 + headers_dict = handler.request_headers()
  42 + handler.clear()
  43 + handler.set_response_header('Status', '200 Ok')
  44 + handler.append_body(b'<h1>Params</h1>')
  45 + for param in params:
  46 + handler.append_body(('<p><b>%s</b> "%s"</p>' % (param.key(), param.data())).encode('utf8'))
  47 + # handler.append_body('<p><b>%s</b> "%s"</p>' % (param.key(), param.data()))
  48 +
  49 + handler.append_body('<h1>Headers</h1>'.encode('utf8'))
  50 + for header in headers_dict:
  51 + handler.append_body(('<p><b>%s</b> "%s"</p>' % (header.key(), header.data())).encode('utf8'))
  52 + print("response_complete")
  53 +
  54 +
  55 +class Debug:
  56 +
  57 + def __init__(self, serverIface):
  58 + # Save reference to the DMap server interface
  59 + # Higher priority
  60 + self.debugFilter = DebugFilter(serverIface)
  61 + serverIface.register_filter(self.debugFilter, 10)
  62 +
注册登录 后发表评论