Closed Aiden2014 closed 1 week ago
不是强相关吧,我把这个字段删掉,强制刷新后也可以正常展示
的确是不强相关。但是通过抓包,发现没有这个字段的情况下,会进行四次重定向回原来的URL后,就被认为是循环重定向了。 抓包看到的最开始的请求ua是Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.2 Safari/605.1.15 但是后面三次的重定向的ua就变回Dart的了,其他headers不变,这应该是dio库检测loop的问题。 而在 cookie 加了opus-goback 字段后,就不需要redirect了,能够直接获取到结果了。
从上往下是4次 redirect 的 ua 情况,b站专栏是根据 ua 和 cookie 中的 opus-goback 字段来判断的。
redirect 的过程中,b站会在第二次请求时返回 opus-goback 字段,但是后面两次请求都不会带上这个字段。
可以
issue: #1070 原因是官方在获取专栏的 cookie 上加了opus-goback = 1。不加上的话会循环重定向。