我在PHP中构建了一个简单的REST API,它向我的MySQL数据库发出查询(完全是utf-8编码)并将结果作为JSON数组返回。在PHP中,我还将字符集设置为UTF-8:--noreload
。
因此,当我在网络浏览器中调用mysqli_set_charset($con, "UTF8");
这样的服务时,我会得到类似的内容:
http://<host>/getData.php
这是完全正确的。
此外,我正在使用OkHttp3从我的Android应用程序中调用我的REST服务。但这总是给我以下输出:
[{"id":"6","name":"föö","content":"bär"}]
显然,charset或类似的东西有问题。
这是我的JAVA代码:
[{"id":"6","name":"föö","content":"bär"}]
你能告诉我我做错了吗?
答案 0 :(得分:1)
好的,我明白了! Renan Arceno提醒我,我的Rest Service给了我HTML实体。因此,我没有在Java中使用Html.fromHtml(result)
- 这显然也有效 - 我删除了将我的字符转换为HTML实体的PHP函数htmlentities()
。
现在它有效。谢谢你!