Skip to content

Python SDK 安装指南

获取 SDK

获取 SDK 有多种方式,较为推荐的方式是通过包依赖管理工具下载最新版本。

包依赖管理工具安装

pip

pip 是最推荐的 Python 包管理工具,它是 easy_install 的替代。安装 leancloud-sdk 只需执行以下命令:

pip install leancloud
根据你的环境,命令之前还可能需要加上sudo

easy_install

也可以使用 easy_install 进行安装:

easy_install leancloud
根据你的环境,命令之前还可能需要加上sudo

手动安装

下载 SDK

初始化

首先进入 控制台 > 设置 > 应用 Key 来获取 App ID 以及 App Key。

然后导入 leancloud,并调用 init 方法进行初始化:

import leancloud

leancloud.init("{{appid}}", "{{appkey}}")
# 或者使用 masterKey
# leancloud.init("appId", master_key="masterKey")
将上述代码中的 App ID 以及 App Key 替换成从控制台复制粘贴的对应的数据即可。

开启调试日志

在应用开发阶段,你可以选择开启 SDK 的调试日志(debug log)来方便追踪问题。调试日志开启后,SDK 会把网络请求、错误消息等信息输出到 IDE 的日志窗口,或是浏览器 Console 或是 LeanCloud 控制台的 云引擎日志 中。

# 写在启动脚本的头部
# 如果是在 LeanEngine 环境,启动脚本是 wsgi.py
import logging

logging.basicConfig(level=logging.DEBUG)

在应用发布之前,请关闭调试日志,以免暴露敏感数据。

启用指定节点

SDK 的初始化方法默认使用中国大陆节点,如需切换到 其他可用节点,请参考如下用法:

import leancloud

leancloud.init("{{appid}}", "{{appkey}}")

leancloud.use_region('US')  # 启用美国节点

# leancloud.use_region('CN') # 默认启用中国节点

全球节点

  • 中国大陆节点 leancloud.cn(SDK 初始化方法默认使用该节点)
  • 北美节点 us.leancloud.cn(服务北美市场)

各个节点彼此独立,开发者账号无法跨节点来创建应用或调用 API。

验证

首先,确认本地网络环境是可以访问 LeanCloud 服务器的,可以执行以下命令行:

ping "{{domainN1}}"
如果当前网路正常将会得到如下响应:

PING api-ucloud.leancloud.cn (123.59.41.31): 56 data bytes
64 bytes from 123.59.41.31: icmp_seq=0 ttl=51 time=9.032 ms
64 bytes from 123.59.41.31: icmp_seq=1 ttl=51 time=7.290 ms
64 bytes from 123.59.41.31: icmp_seq=2 ttl=51 time=8.131 ms
64 bytes from 123.59.41.31: icmp_seq=3 ttl=51 time=9.689 ms
64 bytes from 123.59.41.31: icmp_seq=4 ttl=51 time=6.559 ms
64 bytes from 123.59.41.31: icmp_seq=5 ttl=51 time=8.665 ms
64 bytes from 123.59.41.31: icmp_seq=6 ttl=51 time=8.041 ms
64 bytes from 123.59.41.31: icmp_seq=7 ttl=51 time=8.203 ms
64 bytes from 123.59.41.31: icmp_seq=8 ttl=51 time=6.288 ms
64 bytes from 123.59.41.31: icmp_seq=9 ttl=51 time=7.938 ms

--- api-ucloud.leancloud.cn ping statistics ---
10 packets transmitted, 10 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 6.288/7.984/9.689/0.997 ms
然后在项目中编写如下测试代码:

import leancloud

leancloud.init("{{appid}}", "{{appkey}}")

TestObject = leancloud.Object.extend('TestObject')
test_object = TestObject()
test_object.set('words', "Hello World!")
test_object.save()

然后编译执行。

然后打开 控制台 > 存储 > 数据 > TestObject,如果看到如下内容,说明 SDK 已经正确地执行了上述代码,安装完毕。

testobject_saved

如果控制台没有发现对应的数据,请参考 问题排查

问题排查

401 Unauthorized

如果 SDK 抛出 401 异常或者查看本地网络访问日志存在:

{
  "code": 401,
  "error": "Unauthorized."
}
则可认定为 App ID 或者 App Key 输入有误,或者是不匹配,很多开发者同时注册了多个应用,导致拷贝粘贴的时候,用 A 应用的 App ID 匹配 B 应用的 App Key,这样就会出现服务端鉴权失败的错误。

客户端无法访问网络

客户端尤其是手机端,应用在访问网络的时候需要申请一定的权限。