首页 > 解决方案 > 在本机中上传图像

问题描述

我想上传一张图片,但我似乎收到了网络请求错误。

示例值 {"name": "IMG20200427083924.jpg", "type": "image/jpeg", "uri": "content://com.google.android.apps.photos.contentprovider/-1/1/content %3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F240735/ORIGINAL/NONE/image%2Fjpeg/158476572"}。

我这样做对吗?

 export const uploadDocumentAction = (profpic) => {
 console.log(Endpoint.UPLOAD_DOCUMENT_URL)
 return async (dispatch) => {
    dispatch(uploadDocument());
    try {
        let body = new FormData();
        body.append('document', { uri: profpic.uri, name: profpic.filename, type: profpic.type });
        await AsyncStorage.getItem('accessToken', (error, accessToken) => {
            fetch(Endpoint.UPLOAD_DOCUMENT_URL, {
                method: 'POST',
                headers: {
                    'Content-Type': 'multipart/form-data',
                    Authorization: `Bearer ${accessToken}`
                },
                body: body
            })
                .then((response) => response.json())
                .then((responseJson) => {
                    console.log(responseJson)
                    dispatch(uploadDocumentSuccess(responseJson));

                })
                .catch((error) => {
                    console.log('error', error);
                    dispatch(uploadDocumentFailed())
                })
        });
    } catch (error) {
        console.log(error);
        dispatch(uploadDocumentFailed('Internal Server Error'))
    }
}
}

标签: reactjsreact-native

解决方案


推荐阅读