从外部应用程序Shopify API? (Backbone.js的)

时间:2013-07-12 15:48:29

标签: api backbone.js e-commerce shopify

我与客户合作开发两个网站:一个提供有关其业务的一般信息的网站,以及一个单独的电子商务商店,用于销售他们提供的产品。据我所知,这是一种相当常见的方法,因为客户的CMS需求通常不在大多数电子商务平台提供的范围内。

主站点需要在商店中展示一些产品,因此我正在寻找具有API的电子商务平台。 Shopify引起了我的注意,因为它有返回JSON的API。我将使用带有Sinatra后端的Backbone.js构建主站点。

有人能告诉我Shopify API是否可以这样使用?我还看到一个名为Shopify Widget的Shopify应用程序有点脆弱且不可定制,我认为这不会满足客户的需求。你会如何处理这种情况?

2 个答案:

答案 0 :(得分:1)

您必须使用sinatra应用程序作为Shopify商店的代理,因为通过Javascript进行的跨域调用将无效。

你可以使用ShopifyAPI宝石完成大部分繁重的工作,如果你真的想要,你可以在Sinatra写一个贫民窟RestAPI,这样你就不会重新发明Shopify轮了。

它可能很简单:

POST /shopify.json
{
  "model": "ShopifyAPI::Product",
  "data": { ..shop data... }
}

您可以使用const_get来检索您需要的实际模型。

答案 1 :(得分:1)

如果您使用Sinatra作为后端,您确实可以进行跨域Ajax调用。我一直这样做。如果您想使用CORS,只需使用Rack-Cors gem。如果由于IE在执行CORS时遇到问题而对此感到羞怯,您可以随时返回JSONP作为替代。如果您的Sinatra后端在子域上运行,则可以执行任何操作,因为没有跨域问题。