

httpRequestのurlは下のが入ります。  
urlにpost送信をし、そこからjsonが返ってくるのでlinkを取得したいです。  
取得したlinkをsetしたいんですがなにも入力されず、何が悪いのかもわかりません。

[code]

    url= "https://api-ssl.bitly.com/v4/shorten"
    
    void httpRequest(String url) throws IOException {
            final TextView textView = (TextView) this.findViewById(R.id.editTextTextMultiLine2);
            //OkHttpClinet生成
            OkHttpClient client = new OkHttpClient();
    
            //request生成
            MediaType MIMEType= MediaType.parse("application/json; charset=utf-8");
            RequestBody requestBody = RequestBody.create (MIMEType,"{\n" +
                    "    \"long_url\"https:",  \n" +
                    "    \"domain\": \"bit.ly\",  \n" +
                    "    \"group_guid\": \"guid\" \n" +
                    "}  ");
    
            Request request = new Request.Builder().addHeader("Authorization", "Bearer {token}").url(url).post(requestBody).build();
    
    
            //非同期リクエスト
            client.newCall(request)
                    .enqueue(new Callback() {
    
                        //エラーのとき
                        @Override
                        public void onFailure(@NotNull Call call, @NotNull IOException e) {
                            Log.e("Hoge",e.getMessage());
                        }
    
                        //正常のとき
                        @Override
                        public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
    
                            //response取り出し
                            final String jsonStr = response.body().string();
                            Log.d("Hoge","jsonStr=" + jsonStr);
    
                            //JSON処理
                            try{
                                //jsonパース
                                JSONObject json = new JSONObject(jsonStr);
                                final String url = json.getString("link");
    
                                //親スレッドUI更新
                                Handler mainHandler = new Handler(Looper.getMainLooper());
                                mainHandler.post(new Runnable() {
                                    @Override
                                    public void run() {
    
                                        textView.setText(url);
    
                                    }
                                });
    
    
                            }catch(Exception e){
                                Log.e("Hoge",e.getMessage());
                            }
    
                        }
                    });
        }
    
[/code]


CC BY-SA 4.0
2020-09-18T21:06:52.117
70526
2020-09-19T05:42:29.097
2020-09-19T05:42:29.097
3060
41961
question
java android
AndroidアプリでBitlyへのpost送信がうまくいきません