很难决定,
目前我正在使用 php lib curl 以 x-www-form-urlencoded 的形式发送数据
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($this->arguments));
或者
curl_setopt($curl, CURLOPT_POSTFIELDS, $this->arguments);
第一个问题:第二个似乎内容长度更大,第一个解决方案可能更好?
这对于平面消息很实用,例如:
{
"name": "John",
"token": "2121232145",
"code": "7",
"data": "Hello"
}
但是我也可以有一个表示对象的数据字段,在这种情况下我是对它进行编码,但是这样做(url编码一个Json)是非常冗长和丑陋的消息,
另一方面,我尝试将其作为 application/json 内容类型发送
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($this->arguments));
小消息的内容长度较大,但嵌入 json,显然更好
但是 x-www-form-urlencoded 也接近我需要发送的表单数据,除非嵌入了 json
根据内容类型拥有 2 种不同的 servlet 解析方法并不优雅,那么还有其他选择吗?