Shopify API 开发及 Ajax 使用详解
Shopify 提供多种 API 接口支持业务功能扩展,Ajax 常用于前台交互操作
Shopify 的业务系统高度可定制化,开发者可根据需求通过 Shopify API 进行功能扩展。该 API 支持 XML 和 JSON 数据格式,并支持包括 GET、POST、PUT、DELETE 在内的 HTTP 请求方式。支持的方法涵盖了类别(Collection)、客户(Customer)、订单(Order)、产品(Product) 等主要跨境电商运营模块。
Shopify 主要 API 类型
- Admin API:用于增强管理后台和商城 UX 功能;
- Storefront API:适用于模版修改与启用全局读取方法,比如使用元字段可通过 shop 方法读取:
无需身份验证,所有用户拥有只读权限;<script> var customMetaField = {shop.metafields.namespace.fieldname}; </script> - Payment Apps API(支付APP):需具备 Partner 用户参照对应API进行登录调控权限进行信用卡或退款批复类处理。其请求为 GraphQL 表达式驱动且有速率限制。
- Partner API:允许 Partner 用户访问内置合作伙伴仪表板内的张量数据资产;
- Ajax API:被常规开发中广泛用于主题前台实现轻量级 REST API 服务全部分析默认脱敏化;由 JQuery.js 实现无须主体认证以 JSON 为上述申明主部署响应格式.
- Section Rendering API:可用于动态替换主题部分关键字元素从而满足缓载策略.
- Javascript-level Statement & Window NSObject Extension Exposure APIs e.g: Customer Privacy and Shopify InBox based Messenger API POWERED settings for intra branding intersection in multi platform contextual marketing, 包含移动端的SMS消息与第三方社交平台如 - Facebook Kakao Android扩大了品牌营销触角
Ajax API 在动作表达商品操作页的具体常见使用模式
在 Shopfiy 中可以引入 jQuery 执行 Ajax 请求:
{{ '//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js' | script_tag }}{{ 'api.jquery.js' | shopify_asset_url | script_tag }}
购物车与产品添加常用代码示例解析 highlighting 静默引用术语props
获取某个产品的信息代码如下:
jQuery.getJSON('/products/red-rain-coat.js', function(product) {
alert('The title of this product is ' + product.title);
});
向购物车中添加单个商品的方法:
jQuery.post('/cart/add.js', {
quantity: 1,
id: 794864229,
properties: {
'First name': 'Caroline'
}
});
若同一时间添加多个商品到购物车,建议采用排队调用的方式确保数据一致性逻辑复活后执行写操作有效完成手段如下攀登记:
Shopify.queue = [];
jQuery('.quantity').each(function() {
Shopify.queue.push({
variantId: jQuery(this).data('variant-id'),
quantity: parseInt(jQuery(this).val(), 10) || 0
});
});
'
当然不忘配相关的同步处理函数starvation避免并发更新问题详情请参考完整代码阅读如下实用性文档行为复制到项目环境中自我实践操作可得最优体验指南将更易形成完整的操作链臂反射的自动化过程

