> 웹 프론트엔드 > uni-app > uniapp requrst에서 공개 헤더를 설정하는 방법(두 가지 방법)

uniapp requrst에서 공개 헤더를 설정하는 방법(두 가지 방법)

PHPz
풀어 주다: 2023-04-17 10:54:59
원래의
1739명이 탐색했습니다.

개발 과정에서 우리는 종종 UniApp을 사용하여 크로스 플랫폼 애플리케이션을 구축합니다. UniApp은 Vue.js를 기반으로 하는 오픈 소스 프레임워크로 Vue.js 코어와 일부 크로스 플랫폼 기능을 함께 패키지하여 완전한 개발 경험을 제공할 수 있습니다. 개발 과정에서 데이터를 얻기 위해 네트워크 요청을 보내야 하는 경우가 많습니다. 이때 요청의 정확성과 효율성을 보장하기 위해 일부 공개 헤더 매개변수를 설정해야 합니다.

UniApp에서는 캡슐화된 uni.request를 사용하여 네트워크 요청을 보낼 수 있습니다. uni.request는 우수한 크로스 플랫폼 성능을 가지고 있으며 UniApp의 기본 XMLHttpRequest 및 기본 axios 확장을 캡슐화하고 HTTP/HTTPS 요청을 시작하는 데 사용할 수 있습니다. 공개 헤더 매개변수를 설정하는 데에는 다음 두 가지 일반적인 방법이 있습니다.

방법 1: 요청 옵션에

// main.js
Vue.prototype.$http = function (url, data, method) {
  let token = uni.getStorageSync('token');
  let header = {
    'Authorization': token,
    'Content-type': 'application/json'
  };
  return uni.request({
    url,
    data,
    method,
    header
  })
}

// 调用
this.$http('/api/user', { id: 123, name: 'Tom' }, 'GET').then(res => {
  console.log(res)
})
로그인 후 복사

를 설정합니다. 그 중 $ttp 메소드는 main.js에 정의되어 있으며, 공개 헤더 매개변수는 옵션에서 설정되며, 호출 시 특정 매개변수를 전달할 수 있습니다.

방법 2: 인터셉터를 통한 통합 설정

// request.js
export function request(opts) {
  let token = uni.getStorageSync('token');
  let header = {
    'Authorization': token,
    'Content-type': 'application/json'
  };
  const interceptor = {
    request: (opts) => {
      opts.header = header;
      return opts;
    },
    response: (res) => {
      const { statusCode, data } = res;
      if (statusCode === 200) {
        return data;
      } else {
        uni.showToast({
          title: '请求失败',
          icon: 'none'
        })
        return Promise.reject(res);
      }
    }
  }
  uni.addInterceptor(interceptor);
  return uni.request(opts).finally(() => {
    uni.removeInterceptor(interceptor);
  })
}

// 调用
request({
  url: '/api/user?id=123&name=Tom',
  method: 'GET'
}).then(res => {
  console.log(res);
})
로그인 후 복사

이 방법에서는 요청 함수를 정의하고 인터셉터를 통해 요청을 가로채고 함수에 공개 헤더 매개변수를 설정한 다음 uni.request를 통해 요청을 시작합니다. 요청을 호출할 때 특정 매개변수만 전달하면 됩니다.

결론적으로 보면, UniApp에서는 공개 헤더 매개변수를 설정하는 것이 어렵지 않다는 것을 알 수 있습니다. uni.request의 옵션에서만 설정해도 되고, 인터셉터를 통해 균일하게 설정할 수도 있습니다. code 재사용성을 높이고 반복되는 코드 작성을 줄이는 것이 좋은 선택입니다.

위 내용은 uniapp requrst에서 공개 헤더를 설정하는 방법(두 가지 방법)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿