Skip to main content

Authing SDK for Python

Project description

authing-py-sdk


Authing Python SDK 目前只支持 Python3+。

Authing 官方文档请点击这里

Python SDK 文档请点这里

安装


pip

当构建大规模应用时,我们推荐使用pip进行安装, 它可以与一些模块打包工具很好地配合使用。 注意,Authing 目前仅能从 pip3 以上安装。

# latest stable
$ pip install authing

开始使用


首先在目录下新建一个名为 pub.pem 的文件,并将以下内容复制到文件中:

-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC4xKeUgQ+Aoz7TLfAfs9+paePb
5KIofVthEopwrXFkp8OCeocaTHt9ICjTT2QeJh6cZaDaArfZ873GPUn00eOIZ7Ae
+TiA2BKHbCvloW3w5Lnqm70iSsUi5Fmu9/2+68GZRH9L7Mlh8cFksCicW2Y2W2uM
GKl64GDcIq3au+aqJQIDAQAB
-----END PUBLIC KEY-----

然后初始化 Authing:

from authing.authing import Authing

clientId = 'your_client_id'
secret = 'your_app_secret'

authing = Authing(clientId, secret)

# 如果 Authing 验证 clientId 和 secret 失败,将会抛出一个错误。所以在初始化构造函数的时候,可以使用 try...catch 保证程序不会挂掉。

user = authing.login(**{
    'email': 'test@testmail.com',
    'password': 'testpassword'
})

if user.get('errors'):
    # 出错
else:
    # 未出错

如何获取 ClientId 和 Secret?

错误处理


SDK 中的接口返回数据若出错会存在 "errors" 字段,因此可以用如下代码检查是否出错:

result = authing.xxx() # 执行authing的某方法

if result.get('errors'):
    # 出错,如
    """
    {'code': 500, 'message': 'Cast to ObjectId failed for value "5aec1ea610ecb800018db176xx" at path "_id" for model "User"', 'data': None, 'errors': True}
    """
else:
    # 未发生错误,直接使用数据即可,如:
    """
    {'_id': '5aec1ea610ecb800018db176', 'email': 'xieyang@dodora.cn', 'isDeleted': False}
    """

自定义请求链接


如果你私有部署了 Authing,可以通过以下方式初始化 URL:

from authing.authing import Authing

clientId = 'your_client_id'
secret = 'your_app_secret'

authing = Authing(clientId, secret, {
    "oauth": 'https://oauth.your_url.com/graphql',
    "users": 'https://users.your_url.com/graphql'
})

了解更多报错的详情,请查看错误代码列表

接口相关文档请点击这里

测试

pytest authing/test.py

Get Help

  1. Join us on Gitter: #authing-chat

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

authing-0.16.0.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

authing-0.16.0-py3-none-any.whl (9.5 kB view details)

Uploaded Python 3

File details

Details for the file authing-0.16.0.tar.gz.

File metadata

  • Download URL: authing-0.16.0.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for authing-0.16.0.tar.gz
Algorithm Hash digest
SHA256 9b60b5878ad8fed911122448b19d45915cd9c5ccdcc1127b0728ad50e0747bf0
MD5 841b536a1d0395c2de4ca6102f350dfa
BLAKE2b-256 2e5c904b3230110c35d10b02389a90d14111c56d064c967d764a21603b8a47b1

See more details on using hashes here.

File details

Details for the file authing-0.16.0-py3-none-any.whl.

File metadata

  • Download URL: authing-0.16.0-py3-none-any.whl
  • Upload date:
  • Size: 9.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.8.1

File hashes

Hashes for authing-0.16.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e5815e0ab3afb419069b92f450673baa980fe3127f8889f9d18c863be428b4fb
MD5 5f3d4c8248970cf06e58123ed69efac6
BLAKE2b-256 0b236067f3d4a453ec0cf53b0d9d039a7dd80dc3b831a7ebae6e54450023a52e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page