Rumah > hujung hadapan web > uni-app > UniApp melaksanakan kaedah reka bentuk dan pembangunan pengkapsulan antara muka API dan kaedah permintaan

UniApp melaksanakan kaedah reka bentuk dan pembangunan pengkapsulan antara muka API dan kaedah permintaan

WBOY
Lepaskan: 2023-07-06 15:15:07
asal
3587 orang telah melayarinya

UniApp melaksanakan reka bentuk dan kaedah pembangunan pengkapsulan antara muka API dan kaedah permintaan

Pengenalan: UniApp ialah rangka kerja pembangunan merentas platform berdasarkan Vue.js, yang boleh membangunkan aplikasi iOS, Android dan H5 pada masa yang sama. Dalam UniApp, reka bentuk dan pembangunan pengkapsulan antara muka API dan kaedah permintaan adalah bahagian yang sangat penting. Artikel ini akan memperkenalkan cara menggunakan UniApp untuk melaksanakan reka bentuk dan pembangunan pengkapsulan antara muka API dan kaedah permintaan, serta menyediakan contoh kod yang berkaitan.

1. Kaedah enkapsulasi antara muka API Reka Bentuk
Dalam UniApp, kami boleh mengurus dan merangkum semua antara muka API dengan cara yang bersatu untuk panggilan dan pengurusan yang mudah. Secara umumnya, kita boleh membahagikan antara muka API kepada modul yang berbeza, dan setiap modul sepadan dengan fail. Kita boleh menulis maklumat penghalaan modul, alamat permintaan, kaedah permintaan dan maklumat lain dalam fail konfigurasi dan mengeksport objek. Seterusnya, mari kita lihat dengan lebih dekat cara mereka bentuk kaedah enkapsulasi antara muka API.

  1. Buat folder api untuk menyimpan semua fail antara muka API.
  2. Buat fail config.js dalam folder api untuk mengkonfigurasi maklumat penghalaan, alamat permintaan, kaedah permintaan dan maklumat lain antara muka. Kod sampel adalah seperti berikut:
export default {
  // 登录接口
  login: {
    url: '/api/login',
    method: 'post'
  },
  // 获取用户信息接口
  getUserInfo: {
    url: '/api/user',
    method: 'get'
  },
  // 修改用户信息接口
  updateUserInfo: {
    url: '/api/user',
    method: 'put'
  }
};
Salin selepas log masuk
  1. Buat fail index.js dalam folder api untuk pengurusan bersatu dan eksport semua antara muka API. Kod sampel adalah seperti berikut:
import config from './config';

const install = Vue => {
  if (install.installed) return;

  install.installed = true;

  Object.defineProperties(Vue.prototype, {
    $api: {
      get() {
        const api = {};

        for (const key in config) {
          const { url, method } = config[key];

          api[key] = (data, options) =>
            new Promise((resolve, reject) => {
              uni.request({
                url,
                method,
                data,
                success: res => {
                  resolve(res.data);
                },
                fail: err => {
                  reject(err);
                },
                ...options
              });
            });
        }

        return api;
      }
    }
  });
};

export default {
  install
};
Salin selepas log masuk

2. Bangunkan kaedah permintaan API
Dalam UniApp, anda boleh menggunakan kaedah uni.request untuk menghantar permintaan API. Untuk kemudahan penggunaan, kami boleh merangkum lapisan kaedah permintaan API untuk menjadikannya lebih mudah digunakan dan lebih bersatu.

  1. Buat fail request.js dalam folder api untuk merangkum kaedah permintaan API. Kod sampel adalah seperti berikut:
const request = (url, method, data, options) =>
  new Promise((resolve, reject) => {
    uni.request({
      url,
      method,
      data,
      success: res => {
        resolve(res.data);
      },
      fail: err => {
        reject(err);
      },
      ...options
    });
  });

export default request;
Salin selepas log masuk
  1. Perkenalkan request.js ke dalam fail index.js dalam folder api, dan ubah suai kod yang sepadan. Kod sampel adalah seperti berikut:
import config from './config';
import request from './request';

const install = Vue => {
  if (install.installed) return;

  install.installed = true;

  Object.defineProperties(Vue.prototype, {
    $api: {
      get() {
        const api = {};

        for (const key in config) {
          const { url, method } = config[key];

          api[key] = (data, options) =>
            request(url, method, data, options);
        }

        return api;
      }
    }
  });
};

export default {
  install
};
Salin selepas log masuk

3. Gunakan pengkapsulan antara muka API dan kaedah permintaan
Dalam halaman UniApp, kita boleh memanggil pengkapsulan antara muka API dan kaedah permintaan untuk meminta data melalui ini.$api. Berikut ialah contoh kod:

<template>
  <view>
    <button @click="login">登录</button>
  </view>
</template>

<script>
export default {
  methods: {
    login() {
      this.$api.login({ username: 'admin', password: '123456' })
        .then(res => {
          console.log(res);
        })
        .catch(err => {
          console.error(err);
        });
    }
  }
};
</script>
Salin selepas log masuk

Dalam kod contoh ini, antara muka log masuk dipanggil dengan mengklik butang untuk mencetuskan kaedah log masuk, menghantar nama pengguna dan kata laluan sebagai parameter. Jika permintaan itu berjaya, data yang dikembalikan akan dikeluarkan pada konsol Jika ia gagal, mesej ralat akan dikeluarkan pada konsol.

Kesimpulan: Dengan menggunakan UniApp untuk melaksanakan reka bentuk dan pembangunan pengkapsulan antara muka API dan kaedah permintaan, penulisan kod dan kerja-kerja penyelenggaraan boleh dipermudahkan dan kecekapan pembangunan dipertingkatkan. Saya berharap pengenalan dalam artikel ini dapat membantu anda menggunakan UniApp dengan lebih baik untuk pembangunan. Jika anda mempunyai sebarang pertanyaan, sila tinggalkan mesej untuk perbincangan.

Atas ialah kandungan terperinci UniApp melaksanakan kaedah reka bentuk dan pembangunan pengkapsulan antara muka API dan kaedah permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan