0

バッチ リクエストの 2 番目の部分でリクエストされたフィールドを定義するにはどうすればよいですか?

例:

[
  {
    "method": "GET",
    "name": "get-friends",
    "relative_url": "me/friends?limit=5",
    "omit_response_on_success": false
  },
  {
    "method": "GET",
    "relative_url": "?ids={result=get-friends:$.data.*.id}"
  }
]

これはこれまでのところ機能します。しかし今は、2 番目の部分で要求されたフィールドを定義したいと考えています。

&fields=address( "relative_url": "?ids={result=get-friends:$.data.*.id}&fields=address")を追加すると、"Batch parameter must be a JSON array"例外が発生します:-(

ラルフ

4

1 に答える 1

1

「バッチ パラメーターは JSON 配列である必要があります」という例外が発生する

これはおそらく、何らかの形で構文を無効にしたため、クエリを理解できなかったことを意味します。&は URL 内で特別な意味を持つため、適切にエンコードする必要があるだけです。

パラメータの値全体を URL エンコードしbatchます (基本的に、オブジェクトから取得した JSON 文字列全体)。

(そのために使用する関数/メソッドは、リクエストの作成方法、それぞれの言語によって異なります。PHP にはurlencode、JavaScript にはencodeURIComponentなどがあります。)

于 2015-08-07T08:40:08.013 に答える