package Ġcom . zh ao . wan android . network . interceptor Ċ Ċ import Ġcom . zh ao . wan android . utils . Log Utils Ċ import Ġokhttp 3 . Interceptor Ċ import Ġokhttp 3 . Response Ċ Ċ /** Ċ Ġ* åĪĽå»º æĹ¶éĹ´ ï¼ļ Ġ 2 0 2 1 / 9 / 3 Ċ Ġ* ç¼ĸ ĠĠ Ġ åĨĻ ï¼ļ Ġ Ġz jf Ċ Ġ* é¡µéĿ¢ åĬŁèĥ½ : Ċ Ġ*/ Ċ class ĠLog Interceptor Ġ: ĠInter ceptor Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠTAG Ġ= Ġ" Log Interceptor " ĊĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġfun Ġintercept ( chain : ĠInter ceptor . Chain ): ĠResponse Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= Ġchain . request () ĊĠĠĠĠĠĠĠ Ġval ĠstartTime Ġ= ĠSystem . nano Time () ĊĠĠĠĠĠĠĠ ĠLog Utils . v ( TAG ," url Ġ= Ġ${ request . url } Ġ, Ġ${ chain . connection ()} Ġ, Ġ${ request . headers }") ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Ġ= Ġchain . proceed ( request ) ĊĠĠĠĠĠĠĠ Ġval Ġlist Ġ: ĠHashSet < String > Ġ= ĠHashSet () ĊĠĠĠĠĠĠĠ Ġresponse . headers (" Set - Cookie "). forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog Utils . v ( TAG ," cookies =${ it }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// put Sp Value ( Sp Name . cookie . CO OL IE , list ) ĊĊĠĠĠĠĠĠĠ Ġval ĠendTime Ġ= ĠSystem . nano Time () ĊĠĠĠĠĠĠĠ ĠLog Utils . v ( TAG ," ${ response . request . url } Ġ, Ġ${ ( endTime Ġ- ĠstartTime ) Ġ/ Ġ 1 0 0 0 0 0 0 Ġ} ms Ġ. Ġ${ response . headers } Ġ, Ġ${ response . message }") ĊĊĠĠĠĠĠĠĠ Ġval Ġbody Ġ= Ġresponse . body ĊĠĠĠĠĠĠĠ ĠLog Utils . v ( TAG ," content Length :${ body ?. content Length () }") ĊĠĠĠĠĠĠĠ Ġreturn Ġresponse ĊĠĠĠ Ġ} Ċ }