Lumen не читает запрос данных форм от флаттера - PullRequest
0 голосов
/ 28 февраля 2020

У меня проблема с приложением флаттера, я пытаюсь отправить формданные из флаттера в люмен, но это неразборчиво. Я пробовал в течение 2 дней, но все еще не работает, это мой код флаттера

    var prefs = await SharedPreferences.getInstance();

    var request = new http.MultipartRequest('POST', Uri.parse(api('user/change-photo/4')));
    var stream = new http.ByteStream(DelegatingStream.typed(imageFile.openRead()));
    var length = await imageFile.length();
    var multipartFile = new http.MultipartFile("file", stream, length, filename: basename(imageFile.path), contentType: MediaType.parse('image/jpeg')); 
    request.files.add(multipartFile);

    request.headers.addAll({
      HttpHeaders.authorizationHeader: prefs.getString('token'), "Accept": "application/json",
    });

    request.fields['name'] = 'helooooow!';

    var response = await request.send();

    response.stream.transform(utf8.decoder).listen((value) {
      print(value);
    });

, и это мой код люмена

public function changePhoto(Request $request, $id){
        return response()->json([
            'message' => 'Lorem ipsum',
            'file' => $request->hasFile('file'),
            'name' => $request->name,
            'id' => $id,
            'req_number' => count($request->all())
        ], 201);
    }

и результат, когда я нажимаю кнопку из флаттера приложение -

{"message":"Lorem ipsum","file":false,"name":null,"id":"4","req_number":0}

, но, когда я пробую его на почтальоне, проблем нет, он работает правильно. что не так в моем коде? пожалуйста, помогите мне. большое спасибо

...