検索
ホームページウェブフロントエンドuni-appuniappでログアウトする方法について話しましょう

UniApp は、iOS、Android、H5 などの複数のプラットフォーム用のアプリケーションを構築するために使用できるクロスプラットフォーム開発フレームワークです。開発者が UniApp を使用してアプリケーションを開発する場合、ログアウトが必要な状況が発生することがあります。この記事ではUniAppでログアウトする方法を紹介します。

  1. ローカル ストレージのクリア

ログアウトするときに、ユーザーがファイルを開いたときに元の状態に戻らないようにするために、ローカル ストレージをクリアするのが最も簡単な方法です。ログアウト後にアプリケーションを再度実行する 以前のログイン状態。ローカル ストレージをクリアするには、uni.removeStorageSync(key) メソッドを使用します。このうち、key は、クリアする必要があるローカルに保存されたキーの値を表します。

例:

uni.removeStorageSync('token');

これにより、ローカル ストレージ内の「token」という名前のキー値がクリアされます。

  1. バックグラウンド インターフェイスを呼び出す

ログアウトするときは、ローカル ストレージをクリアするだけでなく、バ​​ックグラウンド インターフェイスを呼び出して、バックグラウンド サーバーに現在のユーザーのデータをクリアさせることもできます。ログインステータス。バックグラウンド インターフェイスを呼び出すときは、サーバーが現在のユーザーを識別できるように、ユーザーのトークン値をサーバーに渡す必要があります。

例:

uni.request({
  url: 'http://localhost:3000/logout',
  method: 'POST',
  data: {
    token: uni.getStorageSync('token')
  },
  success: (res) => {
    // 请求成功,清除本地存储中的 token 值
    uni.removeStorageSync('token');
  }
});

このコードでは、uni.request メソッドを通じてリクエストがバックエンド サーバーに送信され、現在のユーザーのトークン値がサーバーに渡されます。リクエストが成功した場合は、ローカル ストレージのトークン値をクリアします。

  1. プラグインの使用

ローカル ストレージを手動でクリアしてバックエンド インターフェイスを呼び出すことに加えて、UniApp はログアウト機能を実装するための特殊なプラグインも提供します。たとえば、uni-simple-router プラグインです。

このプラグインを通じて、次のことを実現できます:

import {UniSimpleRouter} from 'uni-simple-router';
const router = new UniSimpleRouter({
  routes,
  login: {
    path: '/pages/login/login'
  },
  forbidNamed: ['index']
});

router.beforeEach((to, from, next) => {
  if (to.allowAnonymous === undefined) { // 不是通过 allowAnonymous 允许的匿名则判断登录状态
    const isLogin = uni.getStorageSync('isLogin');
    if (!isLogin) { // 如果未登录
      uni.removeStorageSync('token'); // 清除 token
      if (router.LOGIN_PAGE_NAME) { // 如果有指定的登录页面,则跳转到该页面
        router.push({name: router.LOGIN_PAGE_NAME});
      } else if (router.options.login) { // 如果有指定的全局登录页面,则跳转到该页面
        router.push({path: router.options.login.path});
      } else { // 否则跳转到默认登录页面
        router.push({name: 'login'});
      }
      next(false);
    } else { // 如果已登录,则继续执行
      next();
    }
  } else { // 如果是通过 allowAnonymous 允许的匿名,则直接执行
    next();
  }
});

export default router;

このコードでは、uni-simple-router プラグインを使用してログアウトします。具体的な方法は、トークン値をクリアすることです。指定したページにジャンプして、再度ログインしてください。

まとめ

上記 3 つの方法はいずれも UniApp でのログアウト機能を実現できます。プラグインを使用することは比較的簡単ですが、実現するにはプラグインのダウンロードと設定が必要です; ローカル ストレージのクリアとバックグラウンドの呼び出し このインターフェイスは手動処理を必要とし、一般的な小規模アプリケーションに適しています。どちらの方法を使用する場合でも、ログアウト後に再度アプリを開いたときに以前のログイン状態に戻らないように、ログイン状態をクリアする必要があります。

以上がuniappでログアウトする方法について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
さまざまなプラットフォーム(モバイル、Webなど)で問題をどのようにデバッグしますか?さまざまなプラットフォーム(モバイル、Webなど)で問題をどのようにデバッグしますか?Mar 27, 2025 pm 05:07 PM

この記事では、モバイルプラットフォームとWebプラットフォームのデバッグ戦略について説明し、Android Studio、Xcode、Chrome Devtoolsなどのツールを強調し、OSとパフォーマンスの最適化全体で一貫した結果を得るためのテクニックについて説明します。

UNIAPP開発に利用できるデバッグツールは何ですか?UNIAPP開発に利用できるデバッグツールは何ですか?Mar 27, 2025 pm 05:05 PM

この記事では、Hbuilderx、Wechat開発者ツール、Chrome Devtoolsなどのツールに焦点を当てたUniapp開発のためのデバッグツールとベストプラクティスについて説明します。

UNIAPPアプリケーションのエンドツーエンドテストをどのように実行しますか?UNIAPPアプリケーションのエンドツーエンドテストをどのように実行しますか?Mar 27, 2025 pm 05:04 PM

この記事では、複数のプラットフォームにわたるUNIAPPアプリケーションのエンドツーエンドテストについて説明します。テストシナリオの定義、Appiumやサイプレスなどのツールの選択、環境のセットアップ、テストの書き込みと実行、結果の分析、インテグラートをカバーします

UNIAPPアプリケーションで実行できるさまざまなタイプのテストは何ですか?UNIAPPアプリケーションで実行できるさまざまなタイプのテストは何ですか?Mar 27, 2025 pm 04:59 PM

この記事では、ユニット、統合、機能、UI/UX、パフォーマンス、クロスプラットフォーム、セキュリティテストなど、UNIAPPアプリケーションのさまざまなテストタイプについて説明します。また、クロスプラットフォームの互換性を確保し、JESのようなツールを推奨しています

Uniappの一般的なパフォーマンスアンチパターンは何ですか?Uniappの一般的なパフォーマンスアンチパターンは何ですか?Mar 27, 2025 pm 04:58 PM

この記事では、過剰なグローバルデータの使用や非効率的なデータバインディングなど、UNIAPP開発における一般的なパフォーマンスアンチパターンについて説明し、これらの問題を特定して緩和してアプリのパフォーマンスを向上させる戦略を提供します。

プロファイリングツールを使用して、UNIAPPでパフォーマンスボトルネックを識別するにはどうすればよいですか?プロファイリングツールを使用して、UNIAPPでパフォーマンスボトルネックを識別するにはどうすればよいですか?Mar 27, 2025 pm 04:57 PM

この記事では、プロファイリングツールを使用して、Uniappのパフォーマンスボトルネックを識別および解決し、セットアップ、データ分析、最適化に焦点を当てています。

Uniappでネットワークリクエストを最適化するにはどうすればよいですか?Uniappでネットワークリクエストを最適化するにはどうすればよいですか?Mar 27, 2025 pm 04:52 PM

この記事では、Uniappでネットワーク要求を最適化するための戦略について説明し、遅延の削減、キャッシュの実装、および監視ツールを使用してアプリケーションのパフォーマンスを向上させることに焦点を当てています。

UniappのWebパフォーマンスのために画像を最適化するにはどうすればよいですか?UniappのWebパフォーマンスのために画像を最適化するにはどうすればよいですか?Mar 27, 2025 pm 04:50 PM

この記事では、圧縮、レスポンシブデザイン、怠zyなロード、キャッシング、およびWebP形式の使用を通じて、Webパフォーマンスを向上させるために、Uniappの画像の最適化について説明します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール