Axios가 내 요청 매개 변수를 인코딩하지 못하도록 하려면 어떻게 해야 합니까?
GET 요청의 URL 파라미터를 통해 API 키를 전달하려고 합니다.
단, Axios는 요청을 보낼 때 API 키의 문자를 인코딩하는 것을 알 수 있습니다.이로 인해 API는 키를 인식할 수 없기 때문에 요청을 거부합니다.
Axios가 GET 파라미터를 부호화하지 않도록 하려면 어떻게 해야 합니까?
다음과 같이 커스텀 파라미터 시리얼라이저를 사용할 수 있습니다.
axios.get('https://foobar.com/api', {
paramsSerializer: function(params) {
var result = '';
// Build the query string
return result;
}
});
paramsSerializer
는 인스턴스 수준에서 설정할 수 있습니다.
var instance = axios.create({ paramsSerializer: function(params) { /* ... */ } })
또는 글로벌 수준:
axios.defaults.paramsSerializer = function(params) { /* ... */ };
다른 옵션은 api 키를 URL에 직접 추가하는 것입니다.
axios.get('https://foobar.com/api?api_key=' + key);
params' config 옵션을 사용하여 파라미터를 추가할 수 있습니다.
axios.get('https://foobar.com/api?api_key=' + key, {
params: {
foo: 'bar'
}
});
qs 라이브러리(또는 유사한 부호화 lib)를 사용하는 경우 다음 작업을 수행할 수도 있습니다.
import qs from 'qs';
axios.get('https://foobar.com/api', {
params,
paramsSerializer: (params) => qs.stringify(params, { encode: false }),
});
언급URL : https://stackoverflow.com/questions/39116731/how-to-prevent-axios-from-encoding-my-request-parameters
'programing' 카테고리의 다른 글
Word press 첨부 파일 이미지 캡션 가져오기 (0) | 2023.03.28 |
---|---|
ACF 달력 선택기에서 Wordpress의 시작 날짜와 종료 날짜에 대해 두 개의 날짜를 제한하는 방법은 무엇입니까? (0) | 2023.03.28 |
java.displaces를 클릭합니다.InlawalStateException:클래스를 조사하지 못했습니다. (0) | 2023.03.28 |
TypeScript에서 단일 속성을 옵션으로 설정 (0) | 2023.03.28 |
형식 스크립트에서 Enum을 제한된 키 유형으로 사용 (0) | 2023.03.28 |