gpt4 book ai didi

java - 为什么 java.net.HttpURLConnection 响应无法识别的字符?

转载 作者:行者123 更新时间:2023-12-01 18:10:12 24 4
gpt4 key购买 nike

我的请求执行器类给出了无法识别的字符作为响应。请帮我解决这个问题

导入java.net.HttpURLConnection;

        connection = (HttpURLConnection) neturl.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "application/json");
connection.setRequestProperty("Accept-Charset", "UTF-8");//ADDED

===这里我做了一些补充和逻辑==

        statusCode = connection.getResponseCode();

===这里我做了一些添加和逻辑。响应代码是200,但响应文本未正确显示==

        if ((statusCode == 200) || (statusCode == 201) || (statusCode == 302)) {

is = connection.getInputStream();
}
else {
is = connection.getErrorStream();
}

BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));

String output;
while ((output = br.readLine()) != null) {
retStr += output;
}

这是我的回复 [retStr]

}Umo�6�l���>� I�׬Y+��ك� �b����D"U���/��;J�_�$�B�w���'7�����cHM�����v��,6��R�����/�����|�O��؃�Ԙ��WU�UZ�=�Vg0�2�Y��jTkL����f<F�Q�I��%����,� *:F,��Q��T�K}�N���:gjp�6
��R�e�ca��2/2�D�Pq��m�G����a��H����P���9��T��~�^�'�Kdk�;��֠�[�&m��%fq�XR[)$łn�7\���Z.M�BµQ<*i�C�2#�(TL��!�;��h�)����n�G��h��s���z:� �tB��0����pr��@�E�P���m)�0G<"��5!˸��/yL��U�V+�F%�!(P�\�Tj"�P5��0c����-��î�j��±�Zr4���)�f��f�^Y��&��tT����X)��9݂lV]�����׽��T1č��P5��,��&+�ũ�9.�.m�5Ǫ��
*��t���|r�M�rL f��c����u�xas
�#g�:��On��PՁ�_�q���%a4�E��~$���a��s�щC%���"�kA�$ƍƋb��/!3���� ��b����%c5�� ��/����:�i���%�罺���o�貰��Q� s�6G�~o�5���]��o+��{��0��g輀}�V�ڸ�;�ﱙ#�7[�D�|�����L6�v���!�要ce�\�� g�t�!�Ia�^��G�h�Hfk���Zr$R�j�Nu��[�\�u+��gr%�\�m�[N;���}�ӳ��2�l����ׯgKa����� ��ؼ"j�������xBpn6����+��/��G�L�F���R����yBf��N�����ڜZ�킏��i�J�%M�Cۉހ����n�;�G��7m���m;�����)�a�X��'�ћ�l@�GTi$���C��Vf���v��$�Z��93q����ߚ�H�Je�k�t�����+��?��ilb�RAu�.��* �9B^��(�)����

最佳答案

我认为您正在将 gzip 流作为此处的输出。请尝试在代码中执行以下操作。

当您调用 https URL 时,您会得到 HttpsURLConnection 作为返回,它不处理 gzip 流,因此请尝试下面的操作。

HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestProperty("Accept-Encoding", "gzip");
...
InputStream inStream = new GZIPInputStream(conn.getInputStream());

关于java - 为什么 java.net.HttpURLConnection 响应无法识别的字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33624737/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com