平方检索商家ID服务端点未按预期工作?

时间:2015-10-28 14:08:56

标签: curl square-connect

根据平方的文档,我应该能够在获得个人访问令牌后通过curl通过简单的请求检索商家ID。但是,我收到了一个错误。如何获得商家ID而不是例外?

来自https://docs.connect.squareup.com

  

现在,您可以使用个人访问令牌将您的第一个请求发送到Connect API。

     

打开终端窗口并运行以下curl命令,提供您指定的个人访问令牌:

curl -H "Authorization: Bearer PERSONAL_ACCESS_TOKEN" https://connect.squareup.com/v1/me

文档中的预期结果:

{
  "id": "JGHJ0343",
  "name": "Dave Davis",
  "email": "dave@example.com",
  "country_code": "US",
  "language_code": "en-US",
  "business_name": "Dave's Milkshakes",
  "business_address": {
    "address_line_1": "1455 Market St",
    "locality": "San Francisco",
    "administrative_district_level_1": "CA",
    "postal_code": "94103"
  },
  "business_phone": {
    "calling_code": "+1",
    "number": "4155551234"
  },
  "business_type": "restaurants",
  "account_type": "LOCATION"
}

screenshot of exception in PowerShell

例外文字:

PS C:\Users\JMCC> curl -H "Authorization: Bearer PERSONAL_ACCESS_TOKEN" https://connect.squareup.com/v1/me
Invoke-WebRequest : Cannot bind parameter 'Headers'. Cannot convert the "Authorization: Bearer PERSONAL_ACCESS_TOKEN" value of type "System.String" to type "System.Collections.IDictionary".
...

1 个答案:

答案 0 :(得分:4)

首先,您需要重新生成个人访问令牌,因为您已将其发布在公共论坛中。您可以在connect.squareup.com的开发人员仪表板中执行此操作。

其次,文档假定您使用的是安装了cURL命令行程序的计算机。这是Linux,Mac和其他类UNIX机器上的常用工具。显然,Microsoft已将curl设置为较新版本PowerShell中Invoke-WebRequest cmdlet的别名。我不确定他们为什么决定这样做,因为该命令的参数与curl提供的参数不兼容。

我建议在cURL download page上获取win64版本的cURL。