Android Kotlin 如何获取 RequestBody 中的值 - 详细教程
在Android Kotlin中,可以使用以下代码来获取RequestBody中的值:\n\n1. 首先,确保你已经引入了OkHttp库的依赖。在build.gradle文件中添加以下依赖项:\n\nkotlin\nimplementation 'com.squareup.okhttp3:okhttp:4.9.1'\n\n\n2. 然后,在你的代码中创建一个OkHttpClient实例,并使用它来发送POST请求。你需要构建一个RequestBody对象并将其作为请求的body参数传递给POST请求。\n\nkotlin\nimport okhttp3.*\nimport java.io.IOException\n\nfun main() {\n val client = OkHttpClient()\n val url = "http://www.example.com/post" // 替换为你的POST请求URL\n\n val formBody = FormBody.Builder()\n .add("key1", "value1") // 添加需要传递的参数\n .add("key2", "value2")\n .build()\n\n val request = Request.Builder()\n .url(url)\n .post(formBody)\n .build()\n\n client.newCall(request).enqueue(object : Callback {\n override fun onFailure(call: Call, e: IOException) {\n e.printStackTrace()\n }\n\n override fun onResponse(call: Call, response: Response) {\n val responseBody = response.body()?.string()\n println("Response: $responseBody")\n }\n })\n}\n\n\n3. 在服务器端接收到POST请求后,可以使用以下代码来获取RequestBody中的值:\n\nkotlin\nval requestBody = request.body()\nval buffer = Buffer()\nrequestBody?.writeTo(buffer)\nval requestBodyString = buffer.readUtf8()\nprintln("RequestBody: $requestBodyString")\n\n\n这样就可以获取到RequestBody中的值了。注意,这里的代码是在服务器端执行的,所以你需要将其添加到你的服务器代码中。\n\n希望能帮到你!
原文地址: https://www.cveoy.top/t/topic/p4lv 著作权归作者所有。请勿转载和采集!