Как получить информацию API из дополнения программного обеспечения WooCommerce с Python и WC-API - PullRequest
0 голосов
/ 08 июля 2019

Я пытаюсь выяснить, как я могу получить лицензионные ключи от WooCommerce Software Addon с помощью Python и WooCommerce Api. Кажется, что доступные конечные точки не работают .. Кто-нибудь здесь знает, какчтобы добиться успеха, сочетая вышесказанное ...?

С уважением,

Douwe

Согласно документации WC-Api (http://woocommerce.github.io/woocommerce-rest-api-docs/#introduction)

print (wcapi.get ("api)-keys "). json ()) Должен возвращать информацию, потому что это конечная точка, добавленная программным дополнением WooCommerce (https://docs.woocommerce.com/document/software-add-on/)., но это возвращает неудачное соединение с: {'code': 'rest_no_route', 'message ':' Не найдено ни одного маршрута, соответствующего URL и методу запроса ',' data ': {' status ': 404}} в качестве сообщения.

{' code ':' rest_no_route ',' message ': «Не найден маршрут, соответствующий URL и методу запроса», «data»: {«status»: 404}}

1 Ответ

0 голосов
/ 17 июля 2019

Я только что нашел ту же проблему, решил для моего случая следующий способ:

from woocommerce import API

wcapi = API(
    url = 'foo.bar.com',
    consumer_key = 'yourKeyHere',
    consumer_secret = 'yourSecretHere',
    version = 'wc/3'
)

def checkLicence(key: str, product: str, version: str, email: str) -> bool:
    endpoint = "?wc-api=software-api"

    first = "&request=check&email=%s" % (email)
    second = "&licence_key=%s" % (key)
    third = "&product_id=%s&version=%s" % (product, version)

    r = wcapi.get(endpoint + first + second + third)

    if 200 == r.status_code:
        success = r.json()['success']

        return success
    else:
        return False

Если вы не распознаете обозначение типа, то в компании, в которой я работаю, используется mypy .

...