msg.startsWith("点歌") -> { //获取歌名 val song = msg.substring(2,msg.length) println(song) }
创建request
分别构建httpUrl,headers并将param加入到httpUrl中。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
//配置API信息 val CLOUDMUSICAPI = "http://music.163.com/api/search/pc" val params = mutableMapOf<String, String>("s" to song, "type" to "1") val headers = Headers.headersOf( "User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36", "Cookie", "NMTID=00OROY9zyHPYl3__EqTgjOOsH0yh2sAAAGA1axg4Q" ) val httpUrl = CLOUDMUSICAPI.toHttpUrl().newBuilder() if (params != null) { for (param in params){ httpUrl.addQueryParameter(param.key,param.value) } } val request = Request.Builder().url(httpUrl.build()).headers(headers).build();
//处理查询结果,获取想要的数据 val songsJsonArray = JSON.parseObject(responseStr).getJSONObject("result").getJSONArray("songs") val songJsonObject = songsJsonArray.getJSONObject(0) val songName = songJsonObject.getString("name") val songId = songJsonObject.getLong("id").toString() val artisName = songJsonObject.getJSONArray("artists").getJSONObject(0).getString("name") val albumPicUrl = songJsonObject.getJSONObject("album").getString("picUrl")