diff options
Diffstat (limited to 'python-eleme-openapi-sdk.spec')
-rw-r--r-- | python-eleme-openapi-sdk.spec | 636 |
1 files changed, 636 insertions, 0 deletions
diff --git a/python-eleme-openapi-sdk.spec b/python-eleme-openapi-sdk.spec new file mode 100644 index 0000000..750a051 --- /dev/null +++ b/python-eleme-openapi-sdk.spec @@ -0,0 +1,636 @@ +%global _empty_manifest_terminate_build 0 +Name: python-eleme.openapi.sdk +Version: 0.0.1.13 +Release: 1 +Summary: eleme openapi python sdk +License: MIT License +URL: UNKNOWN +Source0: https://mirrors.aliyun.com/pypi/web/packages/72/54/5968879531c19a4234bfba80e33b1503f92b54461995f53d9cbdd723d180/eleme.openapi.sdk-0.0.1.13.tar.gz +BuildArch: noarch + + +%description +# Python SDK 接入指南 & CHANGELOG + +## 接入指南 + 1.安装eleme sdk依赖包,引入依赖 + 2.利用sdk.config 模块初始化设置沙箱环境,key,secret 如果是企业应用还需设置callback_url + 利用sdk.oauth 模块完成oauth授权测试 + 利用sdk.api 模块完成接口调用测试 + 启动sdk自带的simpleserver 帮助完成接收饿了么推送消息业务处理 + 3.上线前将config.py中初始值__sandbox,key和secret以及callback_url填为正式环境 + + +## 代码示例 + +### 企业应用 + + - 第一步 安装sdk 包,引入模块 + sudo pip install eleme.python.sdk + +```python + from sdk.library.oauth.oauth_client import OAuthClient + from sdk.library.apis.shop_service import ShopService + from sdk.library.protocol.rpc_client import RpcClient + from sdk.config import Config +``` + + - 第二步 实例化一个oauth2.0客户端授权模式的授权对象 + +```python + oauth_client = OAuthClient(Config.get_app_key(), Config.get_secret(), Config.get_callback_url()) +``` + + - 第三步 获取生成授权url + +```python + auth_url = oauth_client.get_auth_url(state, scope) +``` + + - 第四步 在授权url中同意授权后,会跳转到CALLBACK_URL的页面,在通过链接上的参数,获取授权码code + + + - 第五️步 通过code获取token对象,此步获取到的token对象可在有效期内一直使用,不用每次调用前都去获取一次,建议应用授权一次后存放到全局缓存中 + +```python + token = oauth_client.get_token_by_code(code) +``` + + - 第六步 实例化远程调用的client对象 + +```python + rpc_client = RpcClient(token, Config.get_app_key(), Config.get_secret(), Config.get_api_server_url()) +``` + + - 第七步 实例化一个服务对象 + +```python + shop_service = ShopService(rpc_client) +``` + + - 第八步 调用服务方法,获取资源数据 + +```python + shop = shop_service.get_shop(123456) +``` + + - 第九步 如果token过期,通过refresh_token换取新的token +```python + refresh_token = token["refresh_token"] + token = oauth_client.get_token_by_refresh_token(refresh_token, scope) +``` + +### 个人应用 + + + - 第一步 安装sdk 包,引入模块 + sodu install eleme.openapi.sdk + +```python + from sdk.oauth.oauth_client import OAuthClient + from sdk.apis.shop_service import ShopService + from sdk.protocol.rpc_client import RpcClient + from sdk.config import Config +``` + + - 第二步 实例化一个oauth2.0客户端授权模式的授权对象 + +```python + oauth_client = OAuthClient(Config.get_app_key(), Config.get_secret(), Config.get_callback_url()) +``` + + - 第三️步 获取token对象,此步获取到的token对象可在有效期内一直使用,不用每次调用前都去获取一次,建议应用授权一次后存放到全局缓存中 + +```python + token = oauth_client.get_token_in_client_credentials() +``` + + - 第四步 实例化远程调用的client对象 + +```python + rpc_client = RpcClient(token, Config.get_app_key(), Config.get_secret(), Config.get_api_server_url()) +``` + + - 第五步 实例化一个服务对象 + +```python + shop_service = ShopService(rpc_client) +``` + + - 第六步 调用服务方法,获取资源数据 + +```python + shop = shop_service.get_shop(123456) +``` +### simpleServer 使用方式 + - 第一步 安装sdk 包,引入模块 + sodu install eleme.openapi.sdk + +```python + from simpleserver.server import start_server + from sdk.config import Config +``` + + - 第二步 初始化config对象,启动服务 + +```python + + start_server() +``` + 启动服务后 会监听三个localtion + 1.get /listenMessage 响应饿了么平台的url校检 + 2.post /listenMessage 接收饿了么平台的消息推送 + 3.get /callback 授权回调地址,处理授权逻辑 + 4.post /getUserInfo 获取当前的用户信息和店铺信息 + + + + +## CHANGELOG: + +### [v1.1.2] + + Release Date : 2017-02-09 + + - [BugFix] 修复了token获取的问题 + +### [v1.1.1] + + Release Date : 2017-01-24 + + - [Feature] 重新支持个人应用授权,在oauth_client中添加get_token_in_client_credentials方法 + +### [v1.1.0] + + Release Date : 2017-01-24 + + - [Feature] 更新了授权模式为企业应用授权,个人应用授权的方法不在支持,对应的工具类由client_credentials更换为oauth_client + +### [v1.0.4] + + Release Date : 2017-01-19 + +- [Feature] 新增UserService + +### [v1.0.3] + + Release Date : 2017-01-04 + +- [Improvement] token传入的时候由字符串改为对象,并添加了本地校验 + +### [v1.0.2] + + Release Date : 2016-12-21 + +- [Improvement] updateItem添加了参数categoryId + + +### [v1.0.1] + + Release Date : 2016-12-02 + +- [Improvement] 升级使用python3 + + +### [v1.0.0] + + Release Date : 2016-11-19 + +- [Feature] sdk完整实现 +- [Feature] 增加接口调用代码示例 demo/main.py + + +%package -n python3-eleme.openapi.sdk +Summary: eleme openapi python sdk +Provides: python-eleme.openapi.sdk +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-eleme.openapi.sdk +# Python SDK 接入指南 & CHANGELOG + +## 接入指南 + 1.安装eleme sdk依赖包,引入依赖 + 2.利用sdk.config 模块初始化设置沙箱环境,key,secret 如果是企业应用还需设置callback_url + 利用sdk.oauth 模块完成oauth授权测试 + 利用sdk.api 模块完成接口调用测试 + 启动sdk自带的simpleserver 帮助完成接收饿了么推送消息业务处理 + 3.上线前将config.py中初始值__sandbox,key和secret以及callback_url填为正式环境 + + +## 代码示例 + +### 企业应用 + + - 第一步 安装sdk 包,引入模块 + sudo pip install eleme.python.sdk + +```python + from sdk.library.oauth.oauth_client import OAuthClient + from sdk.library.apis.shop_service import ShopService + from sdk.library.protocol.rpc_client import RpcClient + from sdk.config import Config +``` + + - 第二步 实例化一个oauth2.0客户端授权模式的授权对象 + +```python + oauth_client = OAuthClient(Config.get_app_key(), Config.get_secret(), Config.get_callback_url()) +``` + + - 第三步 获取生成授权url + +```python + auth_url = oauth_client.get_auth_url(state, scope) +``` + + - 第四步 在授权url中同意授权后,会跳转到CALLBACK_URL的页面,在通过链接上的参数,获取授权码code + + + - 第五️步 通过code获取token对象,此步获取到的token对象可在有效期内一直使用,不用每次调用前都去获取一次,建议应用授权一次后存放到全局缓存中 + +```python + token = oauth_client.get_token_by_code(code) +``` + + - 第六步 实例化远程调用的client对象 + +```python + rpc_client = RpcClient(token, Config.get_app_key(), Config.get_secret(), Config.get_api_server_url()) +``` + + - 第七步 实例化一个服务对象 + +```python + shop_service = ShopService(rpc_client) +``` + + - 第八步 调用服务方法,获取资源数据 + +```python + shop = shop_service.get_shop(123456) +``` + + - 第九步 如果token过期,通过refresh_token换取新的token +```python + refresh_token = token["refresh_token"] + token = oauth_client.get_token_by_refresh_token(refresh_token, scope) +``` + +### 个人应用 + + + - 第一步 安装sdk 包,引入模块 + sodu install eleme.openapi.sdk + +```python + from sdk.oauth.oauth_client import OAuthClient + from sdk.apis.shop_service import ShopService + from sdk.protocol.rpc_client import RpcClient + from sdk.config import Config +``` + + - 第二步 实例化一个oauth2.0客户端授权模式的授权对象 + +```python + oauth_client = OAuthClient(Config.get_app_key(), Config.get_secret(), Config.get_callback_url()) +``` + + - 第三️步 获取token对象,此步获取到的token对象可在有效期内一直使用,不用每次调用前都去获取一次,建议应用授权一次后存放到全局缓存中 + +```python + token = oauth_client.get_token_in_client_credentials() +``` + + - 第四步 实例化远程调用的client对象 + +```python + rpc_client = RpcClient(token, Config.get_app_key(), Config.get_secret(), Config.get_api_server_url()) +``` + + - 第五步 实例化一个服务对象 + +```python + shop_service = ShopService(rpc_client) +``` + + - 第六步 调用服务方法,获取资源数据 + +```python + shop = shop_service.get_shop(123456) +``` +### simpleServer 使用方式 + - 第一步 安装sdk 包,引入模块 + sodu install eleme.openapi.sdk + +```python + from simpleserver.server import start_server + from sdk.config import Config +``` + + - 第二步 初始化config对象,启动服务 + +```python + + start_server() +``` + 启动服务后 会监听三个localtion + 1.get /listenMessage 响应饿了么平台的url校检 + 2.post /listenMessage 接收饿了么平台的消息推送 + 3.get /callback 授权回调地址,处理授权逻辑 + 4.post /getUserInfo 获取当前的用户信息和店铺信息 + + + + +## CHANGELOG: + +### [v1.1.2] + + Release Date : 2017-02-09 + + - [BugFix] 修复了token获取的问题 + +### [v1.1.1] + + Release Date : 2017-01-24 + + - [Feature] 重新支持个人应用授权,在oauth_client中添加get_token_in_client_credentials方法 + +### [v1.1.0] + + Release Date : 2017-01-24 + + - [Feature] 更新了授权模式为企业应用授权,个人应用授权的方法不在支持,对应的工具类由client_credentials更换为oauth_client + +### [v1.0.4] + + Release Date : 2017-01-19 + +- [Feature] 新增UserService + +### [v1.0.3] + + Release Date : 2017-01-04 + +- [Improvement] token传入的时候由字符串改为对象,并添加了本地校验 + +### [v1.0.2] + + Release Date : 2016-12-21 + +- [Improvement] updateItem添加了参数categoryId + + +### [v1.0.1] + + Release Date : 2016-12-02 + +- [Improvement] 升级使用python3 + + +### [v1.0.0] + + Release Date : 2016-11-19 + +- [Feature] sdk完整实现 +- [Feature] 增加接口调用代码示例 demo/main.py + + +%package help +Summary: Development documents and examples for eleme.openapi.sdk +Provides: python3-eleme.openapi.sdk-doc +%description help +# Python SDK 接入指南 & CHANGELOG + +## 接入指南 + 1.安装eleme sdk依赖包,引入依赖 + 2.利用sdk.config 模块初始化设置沙箱环境,key,secret 如果是企业应用还需设置callback_url + 利用sdk.oauth 模块完成oauth授权测试 + 利用sdk.api 模块完成接口调用测试 + 启动sdk自带的simpleserver 帮助完成接收饿了么推送消息业务处理 + 3.上线前将config.py中初始值__sandbox,key和secret以及callback_url填为正式环境 + + +## 代码示例 + +### 企业应用 + + - 第一步 安装sdk 包,引入模块 + sudo pip install eleme.python.sdk + +```python + from sdk.library.oauth.oauth_client import OAuthClient + from sdk.library.apis.shop_service import ShopService + from sdk.library.protocol.rpc_client import RpcClient + from sdk.config import Config +``` + + - 第二步 实例化一个oauth2.0客户端授权模式的授权对象 + +```python + oauth_client = OAuthClient(Config.get_app_key(), Config.get_secret(), Config.get_callback_url()) +``` + + - 第三步 获取生成授权url + +```python + auth_url = oauth_client.get_auth_url(state, scope) +``` + + - 第四步 在授权url中同意授权后,会跳转到CALLBACK_URL的页面,在通过链接上的参数,获取授权码code + + + - 第五️步 通过code获取token对象,此步获取到的token对象可在有效期内一直使用,不用每次调用前都去获取一次,建议应用授权一次后存放到全局缓存中 + +```python + token = oauth_client.get_token_by_code(code) +``` + + - 第六步 实例化远程调用的client对象 + +```python + rpc_client = RpcClient(token, Config.get_app_key(), Config.get_secret(), Config.get_api_server_url()) +``` + + - 第七步 实例化一个服务对象 + +```python + shop_service = ShopService(rpc_client) +``` + + - 第八步 调用服务方法,获取资源数据 + +```python + shop = shop_service.get_shop(123456) +``` + + - 第九步 如果token过期,通过refresh_token换取新的token +```python + refresh_token = token["refresh_token"] + token = oauth_client.get_token_by_refresh_token(refresh_token, scope) +``` + +### 个人应用 + + + - 第一步 安装sdk 包,引入模块 + sodu install eleme.openapi.sdk + +```python + from sdk.oauth.oauth_client import OAuthClient + from sdk.apis.shop_service import ShopService + from sdk.protocol.rpc_client import RpcClient + from sdk.config import Config +``` + + - 第二步 实例化一个oauth2.0客户端授权模式的授权对象 + +```python + oauth_client = OAuthClient(Config.get_app_key(), Config.get_secret(), Config.get_callback_url()) +``` + + - 第三️步 获取token对象,此步获取到的token对象可在有效期内一直使用,不用每次调用前都去获取一次,建议应用授权一次后存放到全局缓存中 + +```python + token = oauth_client.get_token_in_client_credentials() +``` + + - 第四步 实例化远程调用的client对象 + +```python + rpc_client = RpcClient(token, Config.get_app_key(), Config.get_secret(), Config.get_api_server_url()) +``` + + - 第五步 实例化一个服务对象 + +```python + shop_service = ShopService(rpc_client) +``` + + - 第六步 调用服务方法,获取资源数据 + +```python + shop = shop_service.get_shop(123456) +``` +### simpleServer 使用方式 + - 第一步 安装sdk 包,引入模块 + sodu install eleme.openapi.sdk + +```python + from simpleserver.server import start_server + from sdk.config import Config +``` + + - 第二步 初始化config对象,启动服务 + +```python + + start_server() +``` + 启动服务后 会监听三个localtion + 1.get /listenMessage 响应饿了么平台的url校检 + 2.post /listenMessage 接收饿了么平台的消息推送 + 3.get /callback 授权回调地址,处理授权逻辑 + 4.post /getUserInfo 获取当前的用户信息和店铺信息 + + + + +## CHANGELOG: + +### [v1.1.2] + + Release Date : 2017-02-09 + + - [BugFix] 修复了token获取的问题 + +### [v1.1.1] + + Release Date : 2017-01-24 + + - [Feature] 重新支持个人应用授权,在oauth_client中添加get_token_in_client_credentials方法 + +### [v1.1.0] + + Release Date : 2017-01-24 + + - [Feature] 更新了授权模式为企业应用授权,个人应用授权的方法不在支持,对应的工具类由client_credentials更换为oauth_client + +### [v1.0.4] + + Release Date : 2017-01-19 + +- [Feature] 新增UserService + +### [v1.0.3] + + Release Date : 2017-01-04 + +- [Improvement] token传入的时候由字符串改为对象,并添加了本地校验 + +### [v1.0.2] + + Release Date : 2016-12-21 + +- [Improvement] updateItem添加了参数categoryId + + +### [v1.0.1] + + Release Date : 2016-12-02 + +- [Improvement] 升级使用python3 + + +### [v1.0.0] + + Release Date : 2016-11-19 + +- [Feature] sdk完整实现 +- [Feature] 增加接口调用代码示例 demo/main.py + + +%prep +%autosetup -n eleme.openapi.sdk-0.0.1.13 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-eleme.openapi.sdk -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 0.0.1.13-1 +- Package Spec generated |