1

我正在尝试构建一个 python 库来与我们的 RESTful API 交互,但它使用 CAS 进行客户端身份验证,而且我无法找到任何好的现有库。到目前为止,我已经找到了以下链接,但我不确定它们是用于客户端还是由使用 CAS 本身的网站使用。有没有人对使用好的库以及构建与它交互的代码的好方法有任何建议?

https://wiki.jasig.org/download/attachments/28213515/pycas.py.txt

https://sp.princeton.edu/oit/sdp/CAS/Wiki%20Pages/Python.aspx

http://github.com/benoitc/restkit/

http://morethanseven.net/2009/02/18/python-rest-client.html

我也刚刚尝试使用caslib,但它无法正常工作:

>>> import caslib
>>> srv = caslib.CASServer('https://my.cas/auth')
>>> svc = caslib.CASService('https://my.service/foo')
>>> caslib.login_to_cas_service(srv.login(svc),'user@example.com','password')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "caslib/cas_dance.py", line 250, in login_to_cas_service
    raise CASLoginError('Could not parse the document at %s: %s' % (login_fh.url, errors))
caslib.cas_dance.CASLoginError: Could not parse the document at https://my.cas/auth/login?service=https%3A%2F%2Fmy.service%2Ffoo: undefined entity &copy;: line 97, column 26

嗯,上面的错误似乎在我们的标记中(或 caslib 使用的验证器。)

再次编辑:安装python的lxml库后故障消除。后备解析器也不能正常工作。

4

3 回答 3

2

您可能必须推出自己的解决方案,或者通过修改 python REST 客户端以支持 CAS,或者从头开始构建一些东西(我建议在 httplib2 之上。)

于 2010-07-13T18:05:53.153 回答
0

十一年后,至少有两个 Python CAS 库,提供 Flask 示例:

python-cas - 似乎更当前
的 Flask-CAS -- Github repo 不见了

我个人还没有这些工作,所以 YMMV。

于 2021-10-07T23:49:58.670 回答
-1

也许,官方python示例在:https ://wiki.jasig.org/display/casum/restful+api

于 2016-07-15T15:04:27.623 回答