我有一个PHP函数,它使用一个字符串参数在内部构建一个对象图,然后使用json_encode()创建一个JSON字符串,然后将JSON字符串发布到远程Web服务。
像这样:
function send($text)
{
$payload = array(
'text' => $text
// Set additional properties here ...
);
$payload_json = json_encode($payload);
// Post $payload_json to remote service with Curl ...
}
来自json_encode手册(http://php.net/manual/en/function.json-encode.php)
所有字符串数据必须采用UTF-8编码。
我看到了几个选项:
最佳做法是什么?
答案 0 :(得分:0)
您应该始终与API的用户沟通您期望的内容。
如果您希望使用UTF-8编码的文本,请在文档中说明。
一旦进入,您应该返回描述性错误,例如“无效编码,有关更多信息,请阅读文档:链接”,其中链接转到失败的呼叫的相关页面
这样,您就不再负责了,使用您的API的开发人员会知道出了什么问题,而且您不必在API中担心它。
您是开发人员,它是您的API,您的API有自己的规则,如果有人想要使用它,他们需要遵循您设置的规则。