본문 바로가기
Flutter/Flutter FAQ

Flutter 나쁜 상태: "application/json" 콘텐트 유형을 가진 Request의 본문 필드를 설정할 수 없습니다., Bad state: Cannot set the body fields of a Request with content-type "application/json"

by 베타코드 2023. 7. 12.
반응형

질문


Map<String,String> headers = {'Content-Type':'application/json','authorization':'Basic c3R1ZHlkb3RlOnN0dWR5ZG90ZTEyMw=='};

var response = await post(Urls.getToken,
        headers: headers,
        body: {"grant_type":"password","username":"******","password":"*****","scope":"offline_access"},
      );

이를 실행할 때 데이터를 받을 수 없으며 발생하는 오류는 다음과 같습니다.

Bad state: "application/json" 타입의 content-type을 가진 요청의 body 필드를 설정할 수 없습니다.


답변


본문을 jsonEncode으로 감싸야 합니다.

import 'package:http/http.dart' as http;
import 'dart:convert';

Map<String,String> headers = {'Content-Type':'application/json','authorization':'Basic c3R1ZHlkb3RlOnN0dWR5ZG90ZTEyMw=='};
final msg = jsonEncode({"grant_type":"password","username":"******","password":"*****","scope":"offline_access"});

var response = await post(Urls.getToken,
               headers: headers,
               body: msg,
            );
반응형

댓글