반응형
Axios GET이 Safari 브라우저에서 작동하지 않음
vue 인스턴스에서 created()를 호출하는 단순한 메서드 getInfo() 요구가 있습니다.외부 API에서 데이터를 가져와 페이지에 렌더링합니다.
created() {
this.getInfo();
},
methods: {
getInfo() {
let vm = this;
let url = [my api url];
axios.get(url)
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
})
},
이 방법은 Chrome에서는 완벽하게 작동하지만 Safari(High Sierra, 10.13.2)에서는 완전히 무시됩니다. 왜 이런 현상이 발생하는지 아십니까?콘솔 오류는 없습니다.
나는 만약 내가 더한다면/
예를 들어, 엔드포인트 끝부분까지./users/
대신/users
Safari에서 동작하고 있습니다.
OK는 이 문제를 해결할 수 있었습니다.아래 코드를 참조해 주세요.Axios 호출을 리팩터링하고 새로운 옵션을 추가했습니다.중요한 것은 캐시 버스터를 악시오스 호출의 URL에 추가하는 것입니다.Safari에서는 이 기능이 자동으로 실행되지 않습니다.여러분, 도와주셔서 감사합니다.
getInfo: function () {
let vm = this;
let url = let url = [my api url];
axios({
method: 'get',
url: url + '?nocache=' + new Date().getTime(), // Safari fix
withCredentials: true
})
.then(response => {
console.log(response)
})
.catch(error => {
console.log(error);
})
},
@Bert가 코멘트에서 언급했듯이 메서드숏컷은 아직 Safari 브라우저에서 지원되지 않습니다.
이런 거 해봐
created() {
this.getInfo();
},
methods: {
getInfo: () => {
let vm = this;
let url = [my api url];
axios.get(url)
.then(response => {
console.log(response);
})
.catch(error => {
console.log(error);
})
},
언급URL : https://stackoverflow.com/questions/47877808/axios-get-not-working-in-safari-browser
반응형
'sourcecode' 카테고리의 다른 글
변수가 어레이인 경우 vuex에서 상태를 변경하는 방법 (0) | 2022.07.30 |
---|---|
새로운 요소를 추가하기 위해 Enum을 하위 분류할 수 있습니까? (0) | 2022.07.30 |
Android NDK 코드에 간단하게 로그인 할 수 있는 방법이 있습니까? (0) | 2022.07.30 |
nuxtserverinit 및 사용자 로그인 (0) | 2022.07.30 |
선택한 Vue.js 옵션이 값을 기반으로 하지 않음 (0) | 2022.07.30 |