mucho propietarios de tiendas necesitan效果标准a incorporar más funcionalidades en su tienda. O tal vez seas un desarrollador que tiene una gran idea para una nueva aplicación (app) que ayudaría a los propietarios de tiendas a vender mejor. Cualquiera sea el caso, probablemente necesites usar la API de Shopify. La API te permite hacer cosas tales como descargar el inventario de productos de una tienda y modificar el tema de la tienda.
En este artículo, veremos qué se necesita para obtener acceso a una tienda en particular y hacer llamadas a la API. Se supone que por lo menos tienes algunos conocimientos de desarrollo. Usaré PHP para presentar ejemplos, pero puedes usar casi cualquier lenguaje de desarrollo para lograr toda la funcionalidad que ha sido mencionada.
Tipos de aplicaciones
En Shopify, hay dos tipos de aplicaciones: privadas y públicas. Las aplicaciones privadas están bloqueadas a una sola tienda y generalmente son para propietarios de tiendas que desean ampliar la funcionalidad de sus propias tiendas. Las aplicaciones públicas, como puedes imaginar, son para aplicaciones que se ofrecerán a todos los propietarios de tiendas y no se bloquearán a una sola tienda. Por ejemplo, todas las aplicaciones enumeradas en latienda de aplicaciones de Shopify(contenido disponible solo en inglés), son aplicaciones públicas. En este artículo, nos centraremos en las aplicaciones públicas, pero el aspecto técnico de ambas es el mismo.
También te pueden interesar:4 consejos para crear una aplicación Shopify que venda。
Introducción
En esta guía, explicaremos paso por paso todo lo que se necesita para que tu aplicación se ejecute y se comunique con la API de Shopify. Antes de continuar, deberás hacer lo siguiente (si no lo has hecho todavía):
1. Regístrate para obtener unacuenta de Shopify Partner。¡Es gratis!2. Cuando inicies sesión, continúas y creas las claves API de tu aplicaciónaquí。La mayoria de las各种没有necesitan explicación. Sin embargo, cuando llegues al campo URL de la aplicación devolución de llamada, deberás ingresar el dominio en el que estás trabajando. Shopify solo enviará tokensa este dominio. Por ejemplo, si estás trabajando en tu computadora, puedes configurar esto enhttp ://localhost/por el momento.
3. Después de iniciar sesión, haz clic enAplicacionesen la barra de navegación izquierda y haz clic enCrear aplicacion。
Nombra tu aplicación como quieras. Para la URL de la aplicación, ingresa el dominio en el que estás trabajando con/instalar.php。Si estás desarrollando a nivel local en tu computadora, deberás ingresarhttp: //localhost/install.php。Es posible que debas agregar un número de puerto si tu servidor no se está ejecutando en el puerto 80 (por ejemplo,http:// localhost:8888/install.php).
4.Una vez que tu aplicación esté creada, dirígete a la pestaña Información de la aplicación. En las URL(s) de redireccionamiento whistlisted, quizá quieras agregar el mismo dominio que en el paso 3, esta vez fijado por/generate_token.php.Por ejemplo, si estás desarrollando en tu computadora a nivel local, quizá quieras agregar http:http:// localhost/generate_token.php。
Descargar mi código PHP de muestra(contenido disponible solo en inglés). Todo mi código de ejemplo que se muestra a continuación está tomado de estos scripts. El código de muestra está escrito en un estilo de procedimiento para facilitar el aprendizaje de los conceptos básicos. En un contexto de producción, seguramente querrás agregar más controles y optimizaciones.
También te pueden interesar:7 Tips to Maximize Your Use of the Shopify API。
Cómo generar un token de acceso
Para comenzar a trabajar con los datos de la tienda utilizando la API de Shopify, debes estar autenticado por la tienda. Eso significa que el propietario de la tienda debe instalar y aprobar tu aplicación para ciertos permisos (por ejemplo, crear nuevos productos). Esto se realiza mediante un proceso llamado OAuth, que es un método común y seguro para la comunicación entre aplicaciones. Sabemos que parece complicado pero no te preocupes, cualquiera puede dominarlo rápidamente.
En este artículo, utilizaremos OAuth para crear una URL especial donde el usuario pueda aprobar tu aplicación y finalmente generar un token especial que puedes usar para acceder a la tienda relevante a través de la API en el futuro. A continuación se muestra un diagrama de flujo que describe todos los pasos necesarios para lograr esto.
Paso 1: recopilación de información de la tienda
Cuando un comerciante de Shopify solicita instalar tu aplicación a través de latienda de aplicacionesde Shopify, se enviará una solicitud a la URL de tu aplicación con el parámetro de latiendaanexado。El valor del parámetro de latiendaserá el nombre de dominio delmi shopifydel comerciante, por ejemplo:http:// localhost/install.php?shop=johns-apparel.myshopify.com。
Podemos simular esta solicitud de instalación con solo pegar esta URL en la barra de direcciones de nuestro navegador mientras nuestro servidor se está ejecutando, sustituyendo el valor de tienda por el dominio de tu tienda de desarrollo de Shopify.
Paso 2: aprobación de instalación
Una vez que tengas la URL "myshopify. com" del propietario de la tienda, deberás redirigir al usuario a una URL donde puedas aprobar su aplicación. El formato de esta URL es el siguiente.
https://{shop}。myshopify. com/admin/oauth/authorize?client_id=
{api_key}&scope={scopes}&redirect_uri={redirect_uri}
{shop}
La URL del subdominio “mishopify. com” que te dio el usuario.
{api_key}
Tu clave API que se te proporcionó, según lo indicado anteriormente.
{api_key}
Esta es una lista de permisos que le estás pidiendo al propietario de la tienda que acepte. Para este ejemplo, necesitamos la capacidad de leer pedidos y modificar productos, por lo que solicito read_orders y write_products.Vea una lista completa de alcances y sus definiciones.(contenido disponible solo en inglés)
{redirect_uri}
Donde el usuario debe ser enviado a la siguiente. Esta es la URL para el script que generará el token, como se describe en el paso 3 a continuación.
Ejemplo del código PHP
Paso 3: captura el código de acceso
Si el usuario ha aprobado tu instalación, volverá con un código de autorización en la URL como una cadena de consulta. Por ejemplo:
view raw -URLhosted with ❤ byGitHub
La parte anterior al "?" coincide con la variable$ redirect_urique habías incluido.
Después de la "?" hay varios parámetros que deberían haberse incluido: "code", "hmac" y "timestamp". El parámetro "code" es tu código de autorización que utilizarás para la parte del proceso de OAuth. Los otros dos parámetros se usan para validar que la solicitud sea realmente de Shopify. Vamos a trabajar en eso primero…
Paso 3.b: Validar datos
¿Qué sucede si un hacker intenta enviar una solicitud a tu servidor en el formato anterior? ¿Cómo saber si es de Shopify o si es de otra persona malintencionada? Es por eso que se proporcionan la "hmac" y la "timestamp". Al registrar el parámetro HMAC SHA256, podemos comparar esto con el parámetro hmac entrante y determinar si la solicitud es legítima.
比如de脏污PHP
Sigamos usando este valor de "código" para obtener un token de acceso para la tienda. Lo haremos ejecutando nuestra primera llamada API.
¿Todavía no eres un Shopify partner?
Con oportunidades de ingresos e infinidad de recursos de los que puedes aprender, convertirte en un Shopify Partner es tu oportunidad de trabajar con los clientes para crear soluciones comerciales y aumentar tu experiencia. Únete a una comunidad de emprendedores y comienza hoy a construir tu negocio.
RegistrarmePaso 4: intercambie el código de acceso para el token de la tienda
Por ahora tenemos todo lo que necesitamos para generar el token de la aplicación: la clave API de tu aplicación, las credenciales de la clave secreta de tu aplicación y el código de acceso.
Shopify tiene un API call de endpoint especial que puedes usar para "intercambiar" tu código de acceso con el token API permanente de la tienda:
< div class ="marketing-block marketing-block--light marketing-block--padded gutter-bottom">/admin/oauth/access_token