I cannot figure out how to solve this.
Response is showing me Content-Type: application/json instead of multipart/form-data....
did anyone know what i need to do?
I build in .net 6 MAUI, Android 12 and RestSharp as http client
Please give a look on this image: (IMAGE) Response StatusCode
var client = new RestClient();
var request = new RestRequest(PostImageUrl, Method.Post);
request.AddHeader("Content-Type", "multipart/form-data");
request.AddFile("image", bauzeichnung);
var response = client.Execute(request);
Everything is tested with Postman and works like expected.
EDIT also tried:
request.AlwaysMultipartFormData = true;
Is this Directory Path correct? "/data/user/0/com.Lippert.Digital/cache/b81fe7a766a64981918f1012d7865c8c.jpg"
Can AddFile work with this type of path from my Android phone? This picture was taken with MediaPicker.Default.CapturePhotoAsync();
EDIT
PHP Controller
public function uploadImage(Request $request)
{
$this->validate($request, [
'image' => 'file',
]);
if ($request->file('image'))
{
$name = time().$request->file('image')->getClientOriginalName();
$request->file('image')->move('Bauzeichnungen',$name);
$image = url('Bauzeichnungen/'.$name);
}else
{
$image = 'Image not found';
}
date_default_timezone_set('Europe/Berlin');
DB::table('Bauzeichnung')->insert([
'image' => "$image",
'erstellt_von' => 26,
'aktualisiert_von' => 26,
'Zeitstempel' => date('Y-m-d H:i:s'),
]);
}
PHP Route
Route::post('/uploadImage','ImageController@uploadImage');
After couple of days i found the Solution for the error above...
The reason for that:
Images are too big and only smaller values were allowed in php.ini.
How it can be solved:
Sets the maximum amount of memory, in bytes, that a script can use. This can be used to prevent badly written scripts from "eating up" all of the available memory on a server. To set no memory limit, set this directive to the value -1.
Sets the maximum allowed size of POST data. This option also affects file upload. To upload larger files, the value must be greater than upload_max_filesize . In general, memory_limit should be greater than post_max_size. If an int value is used, that value is measured in bytes. You can also use the shorthand form as described in this FAQ . If the size of the POST data is greater than post_max_size, the $_POST and $_FILES superglobals become to be empty. This can be tracked in a number of ways, e.g. B. by passing the $_GET variable to the script that processes the data, ie and then checking if $_GET['processed'] is set.
The maximum size that an uploaded file can have.
Where i got the Information - PHP Manual: https://www.php.net/manual/de/ini.core.php
Big thanks to : @Jason