Я работаю над приложением Xamarin.Forms PCL, где пользователи могут выбрать фотографию и загрузить ее.Я хотел бы отправить выбранную фотографию в веб-службу, чтобы ее можно было проверить на правильный формат и размер файла, а затем загрузить в фотографии Google.
Чтобы передать его на мой веб-сервис, это должна быть строка.Я попытался использовать
MediaFile file;
var stream = file.GetStream();
var bytes = new byte[stream.Length];
await stream.ReadAsync(bytes, 0, (int)stream.Length);
string content = System.Convert.ToBase64String(bytes);
Моя первая проблема - я не знаю, к чему инициализировать файл, чтобы правильно его преобразовать.Как только пользователь выбирает изображение, оно сохраняется в оперативной памяти с помощью ImageSource image_source;
. После того, как он загрузит его, предположим, что он попадет на мой веб-сайт на PHP, и я получу изображение с $image = $_POST['image_string'];
Мой второй вопрос: как мне преобразовать его обратно в изображение, чтобы проверить тип файла и размер изображения?
Оно отправляется на веб-сайт с помощью
var values = new Dictionary<string, string>
{
{"session", UserData.session },
{"image", ImageAsBase64().Result.Length.ToString() }
};
var content = new FormUrlEncodedContent(values);
var response = await App.client.PostAsync(WebUtils.URL, content);
var responseString = await response.Content.ReadAsStringAsync();
string page_result = responseString;