Я создал приложение и пытаюсь зарегистрироваться для веб-перехватчиков, а затем получить список всех веб-перехватчиков.
Я использую этот код для этого (/server/middleware/auth.js
):
const webhook = new Webhook({ session: session });
webhook.topic = "products/update";
webhook.address = "https://api.service.co/items/update";
webhook.format = "json";
console.info("registering products/update");
try {
await webhook.save({
update: true,
});
} catch (error) {
console.info(error);
}
const webhookSecond = new Webhook({ session: session });
webhookSecond.topic = "products/create";
webhookSecond.address = "https://api.service.co/items/webhooks";
webhookSecond.format = "json";
console.info("registering products/create");
try {
await webhookSecond.save({
update: true,
});
} catch (error) {
console.info(error);
}
console.info("getting all webhooks");
try {
let webhooks = await Webhook.all({
session: session,
});
console.info(webhooks);
} catch (error) {
console.info(error);
}
Все отлично работает для магазина разработки. Однако, когда я пытаюсь запустить этот скрипт в стороннем магазине клиентов, я получаю эту ошибку:
HttpRequestError: Failed to make Shopify HTTP request: FetchError: invalid json response body at https://shopname.myshopify.com/admin/api/2022-04/webhooks.json reason: Unexpected end of JSON input
Разрешения/области приложения: read_checkouts, read_orders, read_inventory, read_products, read_customers
Я получил эту ошибку 3 раза, даже для Webhook.all
.
Подскажите, пожалуйста, из-за чего может быть эта ошибка, и как ее можно исправить?
Эта ошибка была вызвана отсутствием доступа, предоставленного владельцем магазина, к моей учетной записи разработчика-соавтора. Manage settings
требовался доступ.