梦寒君 2022-06-06 15:52 采纳率: 33.3%
浏览 224
已结题

451的状态码怎么解决

问题遇到的现象和发生背景

今天调用领英的api,返回了451的状态码

问题相关代码,请勿粘贴截图

public String sendRequest(String urlParam,String requestType,String token) {
System.setProperty("https.protocols", "TLSv1.2");
HttpURLConnection con = null;
BufferedReader buffer = null;
StringBuffer resultBuffer = null;
try {
URL url = new URL(urlParam);
//得到连接对象
con = (HttpURLConnection) url.openConnection();
//设置请求类型
con.setRequestMethod(requestType);
//设置请求需要返回的数据类型和字符集类型
con.setRequestProperty("accept", "/");
con.setRequestProperty("Connection", "Keep-Alive");
con.setRequestProperty("Host", "api.linkedin.com");
con.setRequestProperty("Authorization", "Bearer "+token);
//允许写出
con.setDoOutput(true);
//允许读入
con.setDoInput(true);
//不使用缓存
con.setUseCaches(false);
//得到响应码
int responseCode = con.getResponseCode();
System.out.println(responseCode);
// if(responseCode == HttpURLConnection.HTTP_OK){
//得到响应流
InputStream inputStream = con.getInputStream();
//将响应流转换成字符串
resultBuffer = new StringBuffer();
String line;
buffer = new BufferedReader(new InputStreamReader(inputStream, "GBK"));
while ((line = buffer.readLine()) != null) {
resultBuffer.append(line);
}
return resultBuffer.toString();
// }

     }catch(Exception e) {
      e.printStackTrace();
     }
     return "";
    }
运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

4条回答 默认 最新

  • 吕布辕门 新星创作者: 后端开发技术领域 2022-06-06 16:09
    关注
    获得1.15元问题酬金

    你可以换一个可用的测试接口来测试你这个方法。这个一般是服务端接口的问题。

    在计算机网上领域中,Http 451 因法律原因不可用(英语:Http 451 Unavailable For Legal Reasons)是一种Http协议的错误状态代码,当用户请求访问某个经政府审核等查核方法后认定不合法的来源时,就会显示这个错误代码。

    该状态码定义于RFC 7725中,与Http协议其他的状态码不同。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月14日
  • 创建了问题 6月6日