pycsw迁移向导

这个页面提供了pycsw跨版本管理的支持.

pycsw 1.x到2.0的迁移

  • 缺省的CSW版本是 3.0.0。 CSW 客户端需要显式地声明 version=2.0.2 来使用 CSW 2的行为。另外,pycsw管理器可能通过在服务器端通过 pycsw.server.Csw 初始化来使用强制的 pycsw version=2.0.2。 查看 CSW支持 来获取更多的信息.
  • pycsw.server.Csw.dispatch_wsgi() 以前将响应内容作为字符串返回。2.0.0引入了兼容性中断,以附加地将HTTP状态代码和响应作为列表返回
from pycsw.server import Csw
my_csw = Csw(my_dict)  # add: env=some_environ_dict,  version='2.0.2' if preferred

# using pycsw 1.x
response = my_csw.dispatch_wsgi()

# using pycsw 2.0
http_status_code, response = my_csw.dispatch_wsgi()

# covering either pycsw version
content = csw.dispatch_wsgi()

# pycsw 2.0 has an API break:
# pycsw < 2.0: content = xml_response
# pycsw >= 2.0: content = [http_status_code, content]
# deal with the API break
if isinstance(content, list):  # pycsw 2.0+
    http_response_code, response = content

查看 API 来获取更多的信息。