我有两个活动,在“第一活动”中,我要对api进行改造
private fun retrofitConfiguration() {
retrofit = Retrofit.Builder()
.baseUrl("https://abhi-debug.github.io/")
.addConverterFactory(GsonConverterFactory.create())
.build()
}
和Api接口-
interface ApiService {
@GET("Caption/caption_home.json")
fun fetchUser() : Call<List<Captions>>
@GET(" ")
fun fetchData(): Call<List<Data>>
}
所以它给了我一个像这样的json-
[
{
"id": 14,
"title": "Demo",
"url": "https://abhi-debug.github.io/Caption/demo.json"
}
]
此处的url-“ https://abhi-debug.github.io/Caption/demo.json”将作为下一个活动的Retrofit的BaseUrl传入下一个活动。
private fun retrofitConfiguration() {
retrofit = Retrofit.Builder()
.baseUrl(**myUrl**)
.addConverterFactory(GsonConverterFactory.create())
.build()
}
myUrl像这样从(FirstActivity)json中获取-
myUrl = intent.getStringExtra("URL")
在FirstActivity中
urlForNextActivity[pos] = captionsList[pos].url
val intent = Intent(context, **SecondActivity**::class.java)
intent.putExtra("URL", urlForNextActivity[position])
context.startActivity(intent)
运行时错误
引起原因:java.lang.IllegalArgumentException:baseUrl必须以/结尾:https://abhi-debug.github.io/Caption/demo.json
注意-https://abhi-debug.github.io/Caption/demo.json是固定的,不能
有/结尾
所以有什么办法可以称呼它
最佳答案
您的baseUrl必须采用https://abhi-debug.github.io/格式。
如果缺少最后一个/(即正斜杠),则会出现错误。
关于java - 如何在baseUrl中调用不带反斜杠的改造,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59084334/