1

我在 Shopware 中创建了 App,并能够获取 apiKey、secretKey、shopUrl 和 shopId。我想使用这些凭据获取我的所有产品。

这是我的代码

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "http://shopware.example.com/store-api/product",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $payload,
  CURLOPT_HTTPHEADER => [
    "Accept: application/json",
    "Content-Type: application/json",
    "sw-access-key: SW234C1LVA010CWHDD34WK1TMW"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
    $data = json_decode($response, true);
    print_r($data);
}

我收到这样的错误

Array
(
    [errors] => Array
        (
            [0] => Array
                (
                    [status] => 412
                    [code] => FRAMEWORK__ROUTING_SALES_CHANNEL_NOT_FOUND
                    [title] => Precondition Failed
                    [detail] => No matching sales channel found.
                    [meta] => Array
                        (
                            [parameters] => Array
                                (
                                )
                        )
                )
        )
)

当我使用设置页面 API 中的 API 密钥时,我可以获得产品。

在此处输入图像描述

但是如何使用 App 凭证(App key、secret key、shop URL)和获取产品

4

1 回答 1

0

您应该在 App 注册期间获得 API 密钥:

https://developer.shopware.com/docs/guides/plugins/apps/app-base-guide#confirmation-request

你试过那个吗?如果它不适用于商店 API,您可能需要使用管理 API。

于 2022-02-06T08:22:00.293 回答