如何通过 Rest API Python 包装器和 WooCommerce Shipment Tracking 插件插入货运跟踪代码

Posted

技术标签:

【中文标题】如何通过 Rest API Python 包装器和 WooCommerce Shipment Tracking 插件插入货运跟踪代码【英文标题】:How to insert shipment tracking code via Rest API Python wrapper and WooCommerce Shipment Tracking plug-in 【发布时间】:2019-03-29 12:05:33 【问题描述】:

设置

我正在使用官方的WooCommerce Shipment Tracking 插件来匹配订单和跟踪代码。

我还使用 Python 和 WooCommerce Rest API 尽可能多地通过脚本进行操作。


问题

Shipment Tracking 插件应与 REST API 一起使用,请参阅:https://docs.woocommerce.com/document/shipment-tracking/#section-8。

但是,文档页面上的说明不包含 Python 示例。

我不确定如何通过 Python 和 WooCommerce REST API 在 WooCommerce 后端插入跟踪号和跟踪提供程序。


代码

使用,

data = 
        'tracking_number': tracking_number,
        'tracking_provider': tracking_provider,
        'date_shipped': datetime.datetime.today().strftime('%Y-%m-%d')
        

我试过了,

wcapi.post('orders/' + order_id + '/shipment-trackings', data).json() wcapi.put('orders/' + order_id + '/shipment-trackings', data).json() wcapi.post('orders/' + order_id, data).json() wcapi.put('orders/' + order_id, data).json()

但都会产生404 错误。

我做错了什么?

【问题讨论】:

【参考方案1】:

如果您收到 404,您可能遇到了不支持发货跟踪的 API 版本:查看文档,上面写着 Version 1.5+ support the REST API。当您创建wcapi 时,您指向的是哪个版本?应该看起来像(来自https://pypi.org/project/WooCommerce/ 的文档):

wcapi = API(
    url="http://example.com",
    consumer_key="ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    consumer_secret="cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    version="wc/v3"
)

【讨论】:

嗨,Femi,感谢您与我一起思考。可悲的是,这就是我正在使用的版本。 我唯一能想到的另一件事是没有安装货运跟踪插件?那会给你一个 404。

以上是关于如何通过 Rest API Python 包装器和 WooCommerce Shipment Tracking 插件插入货运跟踪代码的主要内容,如果未能解决你的问题,请参考以下文章

在 REST API 周围添加 graphql 包装器?

为啥某些python代码的包装器和包装函数是相同的。

如何通过 Python 中的 REST API 访问共享点站点?

使用 REST 包装 GraphQL 从 NestJS 提供 GraphQL 和 REST API

使用 Amazon api 网关用 REST API 包装 graphQL(appsync)

C++ 库的 JNI 包装器和未定义的符号错误