【发布时间】:2016-10-27 21:18:53
【问题描述】:
这是关于我在制作servlet 时目睹的一种奇怪行为,它根据我提供给servlet 的一些参数从Apache Solr 调用和获取数据。
servlet 查询Solr 并以 json 格式返回数据给我。然后通过放置System.out.println(response) 进行验证。它只有 json 格式。
我的问题是,当我收到来自使用此服务的客户端的相同响应时,数据以Base64 格式返回。在我的代码中,我什至没有写一行将响应转换为Base64。我在发送回复之前写的唯一一行是resp.setContentType("application/json")。
虽然我后来通过在我的servlet 中设置resp.setCharacterEncoding("UTF-8"); 在发送响应之前解决了这个问题。然后,每次我在客户端或通过REST client 查询时,我只收到JSON 响应。但我仍然想知道,为什么会发生这种情况,为什么从servlet 以JSON 发送的响应会转换为Base64?
以前有没有人经历过这样的事情?
我使用 Apache Tomcat 作为我的服务器。
【问题讨论】:
标签: java rest tomcat servlets solr