如何使用Ajax从Cratejoy获取客户详细信息



是否有人在与CrateJoy商人API互动的经验周围?

我今天得到了访问密钥,但是,我无法正常工作。

我想做的很简单: - 在页面上显示客户有多少续约。就是这样。

我知道我可以使用商人API(http://docs.cratejoy.com/docs/introduction2(查询此信息。但是,我无法正常工作。

你们中的某人在Cratejoy Merchant API上有任何经验吗?

我尝试使用以下代码:

    <script type="text/javascript">
  import requests
  $.ajax({
url: 'https://api.cratejoy.com/v1/customers/408899124/',
    headers: {
        'Authorization': 'Basic XXXaccesscodeXXXX',
    },
    # make the request
response = requests.get(url, auth=auth)
json_data = response.json()['results']
num_subs = json_data['num_subscriptions']
print ' {}: {}'.format(num_subs)

});
</script>

这可能是完全错误的,所以我真的很感谢您的意见。

这是一个jQuery片段,可以获取有关ID为123456789的虚构客户的信息。

<script>
/**
 * Handler for ajax success.
 */
function onSuccess(obj) {
  console.log(obj);
  // here's where you'd do something with the data.
}

/**
 * Makes the actual ajax call.
 */
$.ajax({
  url: 'https://api.cratejoy.com/v1/customers',
  headers: {
    'Authorization': 'Basic XXXaccesscodeXXXX' 
  },
  method: 'GET',
  data: {
    id: '123456789'
  },
  success: onSuccess
});
<script>

听起来您已经弄清楚了,但是请注意,字符串XXXACCESSCODEXXXX将需要用"用户名:密码"生成的base64编码字符串替换。您可以在base64encode.org上使用该工具生成此编码的字符串。

例如,如果CrateJoy为您提供商户API的用户名是" StackoverFlowbox",并且密码为" BBGBBADJKSAJ123",则转到base64encode.org并输入此...

stackoverflowbox:bbgbbadjksaj123

...然后单击编码。然后复制/粘贴结果字符串,然后在上面的JavaScript中替换xxxaccesscodexxxx。

另一个主要的陷阱:如果您是从浏览器中的HTML页面运行此代码,那么如果它在CrateJoy域之外运行,则会失败。如果您只是构建内部工具,则可以将Chrome与此扩展名一起使用以允许此类请求。

使上述模式工作后,您可以关注商人API文档,开始请求更多信息,例如续订。我还没有自己提取续订信息,所以我不确定该怎么做。但希望这能让您前进。

最新更新