【发布时间】:2018-08-14 09:08:26
【问题描述】:
我是 android studio 和 kotlin 的新手。我试图将我的数据(对象)发布到服务器上,但我收到了 404 响应代码。
我的改造:
object RetrofitClient {
private var OurInstance : Retrofit?=null
val client = OkHttpClient.Builder()
val instance:Retrofit
get() {
if (OurInstance==null)
{
OurInstance =Retrofit.Builder()
.baseUrl("http://coreapi.imagin8ors.org:8080/")
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build()
}
return OurInstance!!
}
}
我的界面:
interface IMyAPI {
@GET("v1/child/{dynamic}/learningpods_new")
fun getDynamic(@Path("dynamic")dynamic:String):Observable<ArrayList<Data>>
@POST("v1/authenticate/create")
fun createParent(@Body parentDetails: ParentDetails):Call<ParentDetails>
}
在我的活动中编码 sn-p:
fun sendNetworkRequest(parentDetails: ParentDetails){
val retrofit=Retrofit.Builder().baseUrl("http://coreapi.imagin8ors.org:8080/")
.addConverterFactory(GsonConverterFactory.create())
.build()
val client=retrofit.create(IMyAPI::class.java)
val call = client.createParent(parentDetails)
call.enqueue(object :Callback<ParentDetails>{
override fun onFailure(call: Call<ParentDetails>?, t: Throwable?) {
Toast.makeText(this@ParentmainActivity,"something went wrong",Toast.LENGTH_LONG).show()
}
override fun onResponse(call: Call<ParentDetails>?, response: Response<ParentDetails>?) {
Toast.makeText(this@ParentmainActivity,"successful :"+response?.code(),Toast.LENGTH_LONG).show()
}
})
}
函数调用:sendNetworkRequest(new_parent)
现在,返回的响应代码是 404。这个问题之前已经提出过,但这些解决方案对我不起作用。这就是为什么我发布另一个问题。
最初我使用的是改造客户端,但后来它不起作用,所以我尝试使用 sendNetworkResquest() 函数。但是,这也不起作用。
【问题讨论】:
标签: android post kotlin http-status-code-404 retrofit2