以下、本文には誤りがあります。
https://square.github.io/okhttp/3.x/okhttp/okhttp3/Request.Builder.html
Request.Builder には、header という、メソッドがあり、それだと上書きしてくれるようです。
大変ありがたいコメントにより知ることができました。
ありがとうございます😊
まま
詳しくは読んでない
Headers.Builder の持ってる変数が List であることとおれが遭遇した事象だけでそうだと断定した
そもそも同じ名前のヘッダは仕様として許容されている
自動でトークンのリフレッシュとかを interceptor で行うような実装していると、ハマることがある
ので、こんな拡張関数で上書きするようにする
private fun Request.Builder.overwrite(name: String, value: String): Request.Builder {
return removeHeader(name) // Remove old one
.addHeader(name, value)
}
よかったですね