package Ġcn . z ha os un ny . soap Ċ Ċ import Ġokhttp 3 . Interceptor Ċ import Ġokhttp 3 . Request Ċ import Ġokhttp 3 . Response Ċ import Ġjava . io . IOException Ċ Ċ /** Ċ Ġ* Ċ Ġ* Ġ@ author Ġzh ao yang Ġ 2 0 2 1 / 1 2 / 1 Ċ Ġ*/ Ċ class ĠSo ap Log Interceptor Ġ: ĠInter ceptor Ġ{ ĊĠĠĠ Ġ@ Throws ( IOException :: class ) ĊĠĠĠ Ġoverride Ġfun Ġintercept ( chain : ĠInter ceptor . Chain ): ĠResponse Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest : ĠRequest Ġ= Ġchain . request () ĊĠĠĠĠĠĠĠ Ġlog Request ( request ) ĊĠĠĠĠĠĠĠ Ġval Ġresponse : ĠResponse Ġ= Ġchain . proceed ( request ) ĊĠĠĠĠĠĠĠ Ġreturn Ġlog Response ( response ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġlog Request ( request : ĠRequest ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġurl Ġ= Ġrequest . url . toString () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheaders Ġ= Ġrequest . headers ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrequest Body Ġ= Ġrequest . body ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . err . println ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . err . println ( headers ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . err . println ( request Body ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġlog Response ( response : ĠResponse ): ĠResponse Ġ{ ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuilder : ĠResponse . Builder Ġ= Ġresponse . newBuilder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclone : ĠResponse Ġ= Ġbuilder . build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbody Ġ= Ġclone . body ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSystem . err . println ( response ) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġresponse ĊĠĠĠ Ġ} Ċ Ċ }