(不推荐)将python应用程序与bigcommerce api连接

bigcommerce-api的Python项目详细描述


注意:BigCommerce API客户端现在位于 bigcommerce包。

用于与requests库通信的包装器 BigCommerce v2 API。

需要requestsstreql(运行pip install bigcommerce-api 对于最简单的安装方法),以及nosevcrpy来运行 测验。

用法

连接

importbigcommerce# OAuth2-based connection# Access_token is optional, if you don't have one you can use oauth_fetch_token (see below)api=bigcommerce.api.BigcommerceApi(client_id='',store_hash='',access_token='')# Legacy Basic authenticationapi=bigcommerce.api.BigcommerceApi(host='https://store.mybigcommerce.com',auth=('username','api token'))

BigcommerceApi还提供了两个用于连接 OAuth2:

  • api.oauth_fetch_token(client_secret, client_secret, code, context, scope, redirect_uri) –获取并返回应用程序的访问令牌。作为一方 效果,将api配置为可供使用。
  • BigcommerceApi.oauth_verify_payload(signed_payload, client_secret) –从已签名的有效负载返回用户数据。

访问和对象

api对象提供对每个api资源的访问,每个api资源 根据资源的功能提供CRUD操作:

api.Products.all()# GET /productsapi.Products.get(1)# GET /products/1api.Products.create(name='',type='',...)# POST /productsapi.Products.get(1).update(price='199.90')# PUT /products/1api.Products.delete_all()# DELETE /productsapi.Products.get(1).delete()# DELETE /products/1

客户端提供对子资源的完全访问,两者都是独立的 资源:

api.ProductOptions.get(1)                  # GET /products/1/options
api.ProductOptions.get(1, 2)               # GET /products/1/options/2

作为父资源上的辅助方法:

api.Products.get(1).options()              # GET /products/1/options
api.Products.get(1).options(1)             # GET /products/1/options/1

这些子资源实现crud方法的方式与 经常资源:

api.Products.get(1).options(1).delete()

过滤器

过滤器可以作为关键字参数应用于all方法:

customer=api.Customers.all(first_name='John',last_name='Smith')[0]orders=api.Orders.all(customer_id=customer.id)

错误处理

数据的最小验证由客户端执行,而不是延迟 这是给服务器的。如果出现任何异常情况,将筹集HttpException。 状态代码:

  • 3xx状态码:RedirectionException
  • 4xx状态码:ClientRequestException
  • 5xx状态码:ServerException

低级API

bigcommerce.api.BigcommerceApi提供的高级api是 在bigcommerce.connection中包装较低级别的api。这个可以 通过api.connection访问,并为 获取/发布/放置/删除操作。

其他文档

API的完整文档可在 developer.bigcommerce.com

待办事项

  • 计算终结点
  • 自动枚举多页响应

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java OnResizeListener或OnDrawListener或类似的东西   java Orika映射嵌套子列表   保存时java Heroku请求超时代码H12   数据库在Java中出现socket读取超时异常的原因是什么?   java如何更改来自Sqlite数据库的特定数据在Listview中的行颜色   java JAXB解组器无法正确处理XML中的列表   java Android日期时区让我抓狂   java不透明属性在Swing中如何工作?   eclipse从JavaEE代码生成流程图   java如何在Hibernate中从相关表中获取计数   java Glassfish部署了项目的依赖项库   java使内容适合JavaFx中的WebView   java不满意的链接错误libcrypto。所以1.0.0   循环中java数组的使用   java找出哪个包调用服务