So laden Sie eine Datei mit der Datei-API von Shopify hoch
Posted: 29 Dec 2024, 11:27
Also nur um klarzustellen, was ich zu tun versuche.
Ich möchte NICHT ein Bild zu einem Produkt hochladen .
Ich möchte die Datei-API verwenden, um eine Datei in Dateien hochzuladen
Ich kenne graphql überhaupt nicht sehr gut.
Ich habe eine private App eingerichtet und die Dateibereiche für die Admin-API festgelegt.
Ich habe das Admin-API-Zugriffstoken kopiert, gespeichert als SHOPIFY_ACCESS_TOKEN
Ich verwende die PHP-SDK-Klasse von shopify
Den Abfrageteil habe ich direkt aus den FileCreate-Dokumenten kopiert.
Der Context::initialize habe ich aus den SDK-Dokumenten erhalten.< /p>
Der zurückgegebene Fehlercode lautet
Ich bin mir nicht sicher, wohin ich von hier aus gehen soll und wie ich es zum Laufen bringen kann.
Kann jemand sehen, wo ich möglicherweise einen Fehler gemacht habe? ?
Edit: 20231112
Ein riesiges Dankeschön an @hamzasgd für die tollen Infos.Ich habe es geschafft, es mit PHP zum Laufen zu bringen Großartig.
Mein Authentifizierungsproblem bestand darin, dass ich den Store-Front-API-Schlüssel anstelle des Admin-API-Schlüssels in die Methode Context::initialize übergeben habe.
Es hätte so sein sollen
Ich möchte NICHT ein Bild zu einem Produkt hochladen .
Ich möchte die Datei-API verwenden, um eine Datei in Dateien hochzuladen
Ich kenne graphql überhaupt nicht sehr gut.
Ich habe eine private App eingerichtet und die Dateibereiche für die Admin-API festgelegt.
Ich habe das Admin-API-Zugriffstoken kopiert, gespeichert als SHOPIFY_ACCESS_TOKEN
Ich verwende die PHP-SDK-Klasse von shopify
Code: Select all
Context::initialize(
env('SHOPIFY_API_KEY'),
env('SHOPIFY_API_SECRET'),
env('SHOPIFY_APP_SCOPES'),
env('SHOPIFY_DOMAIN'),
new FileSessionStorage('/tmp/php_sessions'),
env('SHOPIFY_API_VERSION'),
false,
true,
);
$client = new Graphql(env("SHOPIFY_DOMAIN"), env("SHOPIFY_ACCESS_TOKEN"));
$query = "IMAGE",
"originalSource" => "https://placekitten.com/1300/1300",
],
];
$response = $client->query(["query" => $query, "variables" => $variables]);
Der Context::initialize habe ich aus den SDK-Dokumenten erhalten.< /p>
Der zurückgegebene Fehlercode lautet
Code: Select all
401{"errors":"[API] Invalid API key or access token (unrecognized login or wrong password)"}
Kann jemand sehen, wo ich möglicherweise einen Fehler gemacht habe? ?
Edit: 20231112
Ein riesiges Dankeschön an @hamzasgd für die tollen Infos.Ich habe es geschafft, es mit PHP zum Laufen zu bringen Großartig.
Mein Authentifizierungsproblem bestand darin, dass ich den Store-Front-API-Schlüssel anstelle des Admin-API-Schlüssels in die Methode Context::initialize übergeben habe.
Es hätte so sein sollen
Code: Select all
Context::initialize(
env('SHOPIFY_API_KEY'),
env('SHOPIFY_ACCESS_TOKEN'),
env('SHOPIFY_APP_SCOPES'),
env('SHOPIFY_DOMAIN'),
new FileSessionStorage('/tmp/php_sessions'),
ApiVersion::LATEST,
false,
true,
);