【发布时间】:2018-12-21 11:37:10
【问题描述】:
如何使用改造在 kotlin 中发布原始 jsonArray 字符串
我对 onFailure 方法有超时响应
这是我要发布的字符串数组示例
[{"username":"username4"},{"username":"username2"}]
这是我的端点定义
@Headers("Content-Type: application/json;charset=UTF-8")
@POST("insert/createuser")
fun postuser(@Body logs:String ):Call<ArrRes>
这是我的课
class ArrRes{
@SerializedName("username")
@Expose
var username: String = ""
@SerializedName("message")
@Expose
var message: String = ""
@SerializedName("status")
@Expose
var status: String = ""
}
这是我的发帖方式
var obj = JSONObject(); var arr = JSONArray();
for (i in 0 until 5){
obj.put("username","username${i}");
arr.put(obj);
}
Log.i("app:sync","${arr.toString()}")
mService!!.postuser(arr.toString()).enqueue(
object : Callback<LogResponse> {
override fun onFailure(call: Call<LogResponse>, t: Throwable) {
Log.i("app:retro:service", "onFailure ${t.message}")
}
override fun onResponse(call: Call<LogResponse>, response: Response<LogResponse>) {
if (response.isSuccessful()) {
Log.i("app:retro:service", "onResponse true ${response.body()!!.toString()}")
} else {
Log.i("app:retro:service", "onResponse false ${response.raw().toString()}")
}
}
}
)
这里是使用邮递员的示例成功帖子
感谢您的帮助:)
【问题讨论】:
-
这取决于您的网络服务期望发布的内容。您能否添加一些有关此的信息以及您的改造端点定义。
-
感谢您的回复。我的网络服务是 python。这将收到 sa text/json 并有响应。我使用邮递员通过示例成功帖子更新了我的问题
-
你的改造端点定义怎么样?
-
哦抱歉我忘了会再更新。
-
如果您的错误是服务器超时,则您的问题与您的代码无关。这似乎是服务器端的..
标签: android kotlin retrofit retrofit2