跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Java OKhttp4.0 与 Python Requests、Postman 区别
未分類
16 9 月 2020

Java OKhttp4.0 与 Python Requests、Postman 区别

Java OKhttp4.0 与 Python Requests、Postman 区别

資深大佬 : dadaoqueyi 9

https://doc.sm.ms/ getToken 接口,发现 java 的 okhttp4 调用返回 403,使用 postman 与 python requests 调用成功。 java okhttp4 不成功 Java OKhttp4.0 与 Python Requests、Postman 区别

python requests 成功代码 Java OKhttp4.0 与 Python Requests、Postman 区别

postman 测试成功代码

Java OKhttp4.0 与 Python Requests、Postman 区别

问题出在哪了,百思不得其姐。 其实使用 fiddler 抓了下两者 http 的包,发现没有区别,https 不知道怎么用 fiddler 抓,okhttp4 问题出在 https 证书上面了嘛?

大佬有話說 (24)

  • 主 資深大佬 : dadaoqueyi

    有使用 okhttp4 的大佬嘛,另外纯 java 非 android 使用 okhttp4 需要额外引用 kotlin-stdlib,okhttp4 有没有纯 java 语言的客户端,这样会不会有效率问题
    ![image.png]( https://i.loli.net/2020/09/11/XyAmvBe6UDEluHG.png)

  • 資深大佬 : jdkl

    升级到 jdk 到 1.8.0_212 之前的 1.8 这方面有 bug

  • 資深大佬 : monkeyWie

    java http 方式请求也不行吗,还是 https 不行,另外截图里的 apiUrl 为啥是 http://https://

  • 資深大佬 : earther01

    前一段遇到类似的问题,https 请求用 postman 可以调通,用 java 的 httpClient 死活不通,换了 OKhttp 好了

  • 主 資深大佬 : dadaoqueyi

    @monkeyWie 截图可以忽略实际是 https://sm.ms/api/v2/token,图截取错,代码运行的是对的

  • 主 資深大佬 : dadaoqueyi

    @earther01 http4.5 跟 okhttp4 都试过了,都是 403

  • 主 資深大佬 : dadaoqueyi

    @jdkl 我试下,现在版本 java version “1.8.0_261″,看看升级有没有用,thankyou

  • 主 資深大佬 : dadaoqueyi

    @dadaoqueyi 我擦,看错了,我的版本号比 1.8.0_212 要高呀是 1.8.0_261

  • 主 資深大佬 : dadaoqueyi

    安装了下 jdk11,okhttp 使用还是 403

  • 資深大佬 : monkeyWie

    @dadaoqueyi 这个问题应该是 cloudflare 安全检查,确实是 TLS 的问题,参考这个帖子: https://www.v2ex.com/t/654469#reply71

  • 資深大佬 : chendy

    403 的报错内容是啥…只有一个 403 头?

  • 資深大佬 : mamasan

    加个.addHeader(“User-Agent”, “PostmanRuntime/7.26.5”)

  • 主 資深大佬 : dadaoqueyi

    @chendy 17:33:01.402 [main] INFO vip.codehome.imghost.util.SMMSApiUtil – Response{protocol=h2, code=403, message=, url=https://sm.ms/api/v2/token}

  • 主 資深大佬 : dadaoqueyi

    @mamasan 17:34:51.397 [main] INFO vip.codehome.imghost.util.SMMSApiUtil – Response{protocol=h2, code=200, message=, url=https://xxxxxxxxxxxi/v2/token}
    加个头是 200,但是 token 没拿到,python Requests 也没加头

  • 主 資深大佬 : dadaoqueyi

    @monkeyWie 下班下班,获取我再试下

  • 資深大佬 : mamasan

    @dadaoqueyi
    response.body().string()

  • 主 資深大佬 : dadaoqueyi

    @mamasan 回家我在试下

  • 主 資深大佬 : dadaoqueyi

    @mamasan Request request=new Request.Builder()
    .url(apiUrl)
    .post(formBody)
    .addHeader(“Authorization”,secret)
    .addHeader(“User-Agent”, “aa”)
    .build();
    Call call=client.newCall(request);
    try {
    Response response=call.execute();
    log.info(new String(response.body().bytes()));
    return response.toString();
    }catch(IOException e) {
    throw new RuntimeException(“网络请求失败”,e);
    }
    }
    //加了个 User-Agent 头,用 new String(response.body().bytes())成功拿到结果

  • 資深大佬 : zcw159357

    @dadaoqueyi 第二张图……打码!漏了

  • 主 資深大佬 : dadaoqueyi

    @zcw159357 你在仔细看看,没漏吧

  • 資深大佬 : zcw159357

    @dadaoqueyi traceback 里……

  • 主 資深大佬 : dadaoqueyi

    @zcw159357 汗汗汗,密码,token 我改掉了,此贴删除

  • 資深大佬 : zcw159357

    @dadaoqueyi 咦 删帖只是从列表里去掉吗……感觉还能访问到呢

  • 主 資深大佬 : dadaoqueyi

    @zcw159357 删不了,我改密码了

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具