Check out example codes for "s3 upload base64 .net core". It will help you in understanding the concepts better.

Code Example 1

private static readonly string _awsAccessKey = ConfigurationManager.AppSettings["AWSAccessKey"];

private static readonly string _awsSecretKey = ConfigurationManager.AppSettings["AWSSecretKey"];

private static readonly string _bucketName = ConfigurationManager.AppSettings["Bucketname"];

public ActionResult UploadToS3(string base64String)
{
    try
    {
        IAmazonS3 client;
        byte[] bytes = Convert.FromBase64String(base64String);

        using (client = Amazon.AWSClientFactory.CreateAmazonS3Client(_awsAccessKey, _awsSecretKey))
        {
            var request = new PutObjectRequest
            {
                BucketName = _bucketName,
                CannedACL = S3CannedACL.PublicRead,
                Key = string.Format("UPLOADS/{0}", file.FileName)
            };
            using (var ms = new MemoryStream(bytes))
            {
                request.InputStream = ms;
                client.PutObject(request);
            }
        }
    }
    catch (Exception ex)
    {
        

    }
    return View();
}

Learn ReactJs, React Native from akashmittal.com