0

次のデータを試してPUTいます: {value: false}. 私は isomorphic-fetch を使用しており、以下を送信しています: JSON.stringify({value: false}). 問題は、サーバーがすべての値が文字列であることを期待していることです。FormData を使って送信してみましたが、サーバーがなぜか理解できません。

すべての値を文字列として出力する JSON.stringify でリプレースを使用しようとするほうがよいでしょうか? または、代わりに FormData に NVP を返させる方法はありますか? 推奨されるアプローチのスニペットを探しているだけです。

4

2 に答える 2

1

文字列化する前に、渡すオブジェクトのすべての値を調べて、それらに対して toString() を呼び出すことができます。

于 2016-11-20T21:27:58.330 に答える
0

URLSearchParams()toString を使用するときは、null と配列の処理だけを使用して回避することにしました。

let qs = new URLSearchParams();

for (let i in data) qs.append(i, data[i]);

const result = qs.toString();

または、wish-js-had-better-immutable-objects:

const result = Object.keys(data).reduce((p, c) => {
  p.append(c, data[c]);

  return p;
}, new URLSearchParams()).toString();
于 2016-11-20T21:45:38.713 に答える