ホームページ WeChat アプレット ミニプログラム開発 WeChat アプレット ネットワークがタイムアウトになった場合はどうすればよいですか?

WeChat アプレット ネットワークがタイムアウトになった場合はどうすればよいですか?

Jul 14, 2020 pm 03:08 PM
WeChat アプレット ネットワークタイムアウト

WeChat アプレット ネットワーク タイムアウトの解決策: 1. onLaunch の実行中にタスクがタイムアウトした場合は、エラー レベルを 0 に設定し、エラー ページにリダイレクトします。 2. ページ リクエストがタイムアウトした場合は、エラー レベルを設定します。レベルを 0 にします。 2. 再試行することで修正できます。

WeChat アプレット ネットワークがタイムアウトになった場合はどうすればよいですか?

WeChat アプレット ネットワーク タイムアウトの解決策:

onLaunchこれを通じて、ユーザーの基本情報、または次のステップの処理のために配置します。データを取得できない場合、アプレット全体が失敗します。

そこで、エラーを 2 つのレベルに分けることをお勧めします。開発者サーバーに接続できない場合は、ページをリロードすることで対処できます。ただし、onLaunch のデータが取得できない場合は、ユーザーは終了する必要があります小さなプログラムを再度開いて再試行してください。

app.json の構成はタイムアウトの設定に使用されます。デフォルトは 6000 ミリ秒、つまり 6 秒です。

"networkTimeout": {
    "request": 6000,
    "downloadFile": 10000
  }
ログイン後にコピー

関連する学習上の推奨事項: WeChat ミニ プログラム開発チュートリアル

1. onLaunch

の実行中にタスクがタイムアウトした場合、エラー レベルを 0 に設定し、エラー ページにリダイレクトします

wx.login({
      success(res) {
        if (res.code) {
          //console.log(res.code);
          //发起网络请求
          wx.request({
            url: 'https://**/index/zz/getuserinfo',
            data: {
              code: res.code
            },
            success: res => {
            
              wx.setStorageSync('open_id', res.data.openid);
              wx.setStorageSync('session_id', res.data.session_id);
              wx.setStorageSync('session_key', res.data.session_key);
              that.globalData.isSessionkey=true;
              //console.log(res.data);
              if (that.sessionCallback) {
                        that.sessionCallback(res);
              }
             
            },fail:f=>
            {
              wx.showModal({
                title: '提示',
                showCancel: false,
                content: '可能网络不太好,请重试!',
                success: function () {
                  wx.navigateTo({
                    url: '/pages/reload?error=0'
                  });
                }
              });
            }
          })
        } else {
          console.log('登录失败!' + res.errMsg)
        }
      
      }, fail: function () {
        wx.showModal({
          title: '提示',
          showCancel: false,
          content: '可能网络不太好,请重试!',
          success: function () {
            wx.navigateTo({
              url: '/pages/reload?error=0'
            });
          }
        });
      }
    });
ログイン後にコピー

2. ページ要求がタイムアウトした場合は、エラーを 2 に設定します。これは再試行することで修正できます。

wx.request({
    url: webUrl + model.url,
    data: model.param,
    method: model.method,
    success: function (res) {
 
    },
    fail: function (res) {
      wx.hideLoading();
      wx.showModal({
        title: '提示',
        showCancel: false,
        content: '可能网络不太好,请重试!',
        success: function () {
          wx.navigateTo({
            url: '/pages/reload?error=1'
          });
        }
      });
    }
  })
ログイン後にコピー
3. ページを処理します。 getCurrentPages()## を使用します。 # 前のページ オブジェクトを取得するには、wx.navigateToこのページへのリダイレクトを使用する必要があります

/**
  * 页面的初始数据
  */
 data: {
  error:0 // 0:需要退出小程序 1:可以重新发起网络请求重试
 },
 reLoad:function(error)
 {
   var pages = getCurrentPages();//获取页面栈
   if (pages.length > 1) {
     //上一个页面实例对象
     var prePage = pages[pages.length - 2];
     let url=prePage.route;
     var options = prePage.options //如果要获取url中所带的参数可以查看options
     console.log('options', options);
     //拼接url的参数
     var urlWithArgs = url + '?'
     for (var key in options) {
       var value = options[key]
       urlWithArgs += key + '=' + value + '&'
     }
     urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1)
     
     wx.reLaunch({
       url: '/' + urlWithArgs,
       fail:function(e)
       {
         wx.switchTab({
           url: '/' + prePage.route,
         })
       }
     });
   }
  },
 
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.setData({ error: options.error});
   // this.reLoad(options.error);
  },
ログイン後にコピー

以上がWeChat アプレット ネットワークがタイムアウトになった場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Xianyu WeChat ミニプログラムが正式に開始 Xianyu WeChat ミニプログラムが正式に開始 Feb 10, 2024 pm 10:39 PM

Xianyu WeChat ミニプログラムが正式に開始

Xianyu WeChat アプレットの名前は何ですか? Xianyu WeChat アプレットの名前は何ですか? Feb 27, 2024 pm 01:11 PM

Xianyu WeChat アプレットの名前は何ですか?

WeChatアプレットは画像アップロード機能を実装 WeChatアプレットは画像アップロード機能を実装 Nov 21, 2023 am 09:08 AM

WeChatアプレットは画像アップロード機能を実装

PHPを使用してWeChatアプレットの中古取引機能を開発するにはどうすればよいですか? PHPを使用してWeChatアプレットの中古取引機能を開発するにはどうすればよいですか? Oct 27, 2023 pm 05:15 PM

PHPを使用してWeChatアプレットの中古取引機能を開発するにはどうすればよいですか?

WeChat アプレットを使用してカルーセル切り替え効果を実現する WeChat アプレットを使用してカルーセル切り替え効果を実現する Nov 21, 2023 pm 05:59 PM

WeChat アプレットを使用してカルーセル切り替え効果を実現する

WeChat アプレットにドロップダウン メニュー効果を実装する WeChat アプレットにドロップダウン メニュー効果を実装する Nov 21, 2023 pm 03:03 PM

WeChat アプレットにドロップダウン メニュー効果を実装する

WeChat ミニ プログラムに画像フィルター効果を実装する WeChat ミニ プログラムに画像フィルター効果を実装する Nov 21, 2023 pm 06:22 PM

WeChat ミニ プログラムに画像フィルター効果を実装する

WeChat アプレットに画像回転効果を実装する WeChat アプレットに画像回転効果を実装する Nov 21, 2023 am 08:26 AM

WeChat アプレットに画像回転効果を実装する

See all articles