Safari версия: 11.1.2 (13605.3.8)
Я пишу приложение для загрузки, сначала нужно получить token
, и как только я его получу, загрузите file
.
В Chrome
все хорошо.
НО НА Safari
СМОТРЕТЬ, КАК token()
ЗАПРОС ТОЛЬКО ОДИН РАЗ.
Поскольку token
используется только один раз для каждого файла, попытка использовать тот же самый файл загрузки токена приведет к ошибке file exist!
.
Я уверен, что ответ token()
отличается при каждом новом запросе, но инструменты Inspect Network
показывают, что запрос имеет только один.
Я хочу знать, что это ошибка Safari
? как это исправить? и выглядит как на Chrome
не проблема.
Код:
function token() {
const url = `${host}/v1/user/upload/token`;
return axios.post(url)
.catch(response => errorResolver(response));
}
function upload(file) {
token()
.then(({ data }) => {
const { key, token } = data;
return doUpload(file, key, token);
});
}
var files = ... // selected file array
var uploads = files.map(file => upload(file));
Promise.all(uploads)
.then(() => {
console.log("al file upload done!");
})
.catch(error => {
console.log(error);
});