我正在将Shopify与FastAPI集成以创建REST API端点。目前,我正在尝试使用应用程序授权卖家。这是密码
# Endpoint to authenticate a seller
@router.post("/authorize", response_class=ORJSONResponse)
def authorize_seller(auth_data: SellerAuth):
# Start a Shopify session
shopify.Session.setup(api_key=os.getenv("SHOPIFY_CLIENT_ID"), secret=os.getenv("SHOPIFY_CLIENT_SECRET"))
shop_url = "c56-test-seller.myshopify.com"
api_version = '2023-07'
state = binascii.b2a_hex(os.urandom(15)).decode("utf-8")
# redirect_uri = "http://myapp.com/auth/shopify/callback"
redirect_uri = "http://127.0.0.1:8082"
scopes = ['read_products', 'read_orders']
newSession = shopify.Session(shop_url, api_version)
auth_url = newSession.create_permission_url(scopes, redirect_uri, state)
return ORJSONResponse(
status_code=response_status.HTTP_200_OK,
content=jsonable_encoder({"auth_url": auth_url}),
)
但是,我得到了一个shopify.api_version.VersionNotFoundError
。我已经将redirect_uri添加到我的合作伙伴 Jmeter 板上的URL列表中。错误跟踪告诉我,即使它是当前的稳定版本,也找不到该版本。
return cls.versions[version]
KeyError: '2023-07'
1条答案
按热度按时间5vf7fwbs1#
您正在使用的shopify_python_API包的版本(在撰写本文时是最新版本)似乎还不支持该特定的API版本。
https://github.com/Shopify/shopify_python_api/blob/master/shopify/api_version.py
您可以尝试使用受支持的版本之一,或者等到他们将
2023-07
版本合并到python包中。