1

square up のドキュメントによると、個人用アクセス トークンを取得した後、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"
}

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".
...
4

1 に答える 1

4

まず、公開フォーラムに投稿した個人用アクセス トークンを再生成する必要があります。これは、connect.squareup.com の開発者ダッシュボードで行うことができます。

次に、このドキュメントでは、cURLコマンド ライン プログラムがインストールされたマシンを使用していることを前提としています。これは、Linux、Mac、およびその他の UNIX ライク マシンで共通のユーティリティです。どうやら、Microsoft は新しいバージョンの PowerShell でコマンドレットcurlのエイリアスとして設定したようです。Invoke-WebRequestそのコマンドの引数はcurlが提供するものと互換性がないため、なぜこれを行うことにしたのかわかりません。

cURL ダウンロード ページで cURL の win64 バージョンを入手することをお勧めします。

于 2015-10-28T17:20:02.233 に答える