Hướng dẫn fix AWSS3Provider - error uploading region is missing trong Amplify

9th Apr 2021
Table of contents

Tôi đang sử dụng công cụ chọn ảnh gốc phản ứng để lấy đường dẫn tệp của video trên điện thoại trình mô phỏng iOS cho ứng dụng gốc phản ứng của mình. Làm cách nào để sử dụng cái này để tải lên S3 bằng Amplify?

import ImagePicker from 'react-native-image-picker';
import RNFetchBlob from 'react-native-fetch-blob';
import {Storage} from 'aws-amplify';

class App extends Component {

 constructor(props) {
    super(props)

 }

  //This function is called on a Button click
  pickVideo = async () => {

     const options = {
     mediaType: 'video'
  };

  ImagePicker.launchImageLibrary(options, (response) => {

    if(response.didCancel){
      console.log('User cancelled image picker');
    }
    else if (response.error){
       console.log('ImagePicker error: ', response.error);
    }
    else{
       this.setState({ 
          vidFileName: response.fileName,
        });

        console.log(response.uri);

       this.putFileInS3(response.path, repsonse.filename);
    }
   });

  }

  readFile = (somefilePath) => {
      return RNFetchBlob.fs.readFile(somefilePath, 'base64').then(data => new 
      Buffer(data, 'base64'));
  } 

  putFileInS3 = (filePath, fileName) => {  

    this.readFile(filePath).then(buffer => {
    Storage.put(fileName, buffer, { contentType: 'video/mp4' })
     .then(() => {console.log('successfully saved to bucket');})
     .catch(e => { console.log(e);});
   }
  }

Cách giải quyết

Storage.configure({
    AWSS3: {
        bucket: '',//Your bucket ARN;
        region: ''//Specify the region your bucket was created in;
    }
});

import Amplify from 'aws-amplify';

Amplify.configure({
    Auth: {
        identityPoolId: 'XX-XXXX-X:XXXXXXXX-XXXX-1234-abcd-1234567890ab', 
        region: 'XX-XXXX-X', // REQUIRED - Amazon Cognito Region
        userPoolId: 'XX-XXXX-X_abcd1234', //OPTIONAL - Amazon Cognito User Pool ID
        userPoolWebClientId: 'XX-XXXX-X_abcd1234', 
    },
    Storage: {
        AWSS3: {
            bucket: '', //REQUIRED -  Amazon S3 bucket
            region: 'XX-XXXX-X', //OPTIONAL -  Amazon service region
        }
    }
});
Bạn thấy bài viết này như thế nào?
0 reactions

Add new comment

Image CAPTCHA
Enter the characters shown in the image.
Câu nói tâm đắc: “Điều tuyệt với nhất trong cuộc sống là làm được những việc mà người khác tin là không thể!”

Related Articles

Thanks for the great feedback and suggestions, this version is a collab between me and all of you who commented under the previous post.

Công việc của người làm Data Engineer là xây dựng các hệ thu thập quản lý chuyển đổi dữ liệu thô thành thông tin có

Install node version manager (nvm) by typing the following at the command line.

It is the second article in the Learn AWS CLI series. It gives you an overview of working with the AWS S3 bucket using CLI commands. We also look at a brief overview of the S3 bucket and its key components.

Hướng dẫn đặt mật khẩu folder web trên apache cho các phần của trang web mà bạn muốn hạn chế quyền truy cập.