android-studio - okHttp3 newCall的参数不匹配类型请求
问题描述
okHttpClient?.newCall(request)?.enqueue(object: Callback{
用于“请求”
类型不匹配。要求:请求!找到:Request.Builder
被展示。
即使我寻找示例代码,它似乎是正确的表达,但我想知道如何解决它。
fun sendMessage(destinationUid: String, title: String, message: String) {
FirebaseFirestore.getInstance().collection("pushtokens").document(destinationUid).get()
.addOnCompleteListener { task ->
if (task.isSuccessful) {
var token = task?.result?.get("pushToken").toString()
var pushDTO = PushDTO()
pushDTO.to = token
pushDTO.notification.title = title
pushDTO.notification.body = message
var body = RequestBody.create(JSON, gson?.toJson(pushDTO))
var request = Request.Builder()
Request.Builder()
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "key=" + serverKey)
.url(url)
.post(body)
.build()
okHttpClient?.newCall(request)?.enqueue(object : Callback{
override fun onFailure(call: Call?, e: IOException?) {
}
override fun onResponse(call: Call?, response: Response?) {
println(response?.body()?.string())
}
})
}
}
}
解决方案
var request = Request.Builder()
Request.Builder()
.addHeader("Content-Type", "application/json")
.addHeader("Authorization", "key=" + serverKey)
.url(url)
.post(body)
.build()
解决了这个问题。Request.Builder() 这部分写了两次,出现错误。
推荐阅读
- shortest-path - 为什么矩形的两个角之间的路径看起来很奇怪?
- bash - 如果特定列之后超过 60% 或更多的列包含相同的特定值,如何删除整行?
- python - ImportError:无法从“mypackage”(未知位置)导入名称“app”
- javascript - 给出 a 中的每个第二个元素
- 不同的 CSS 样式属性
- php - 随机文件选择程序
- c# - 如何将目录路径、ChromeOptions 和 ChromeDriverService 传递给新的 ChromeDriver?
- c - 如何拆分多行字符串并将它们存储到C中的json数组中
- java - 如何用“@”替换所有空行?
- javascript - Jquery 只选择除一个具有相似 ID 的所有
- python - 如何计算 Word2Vec 训练模型中的词频?