ホームページ >ウェブフロントエンド >uni-app >uniapp ネットワークリクエストの結果

uniapp ネットワークリクエストの結果

王林
王林オリジナル
2023-05-26 11:03:371379ブラウズ

モバイル アプリケーションはサーバーから継続的にデータを取得し、それをユーザーのデバイスに表示する必要があるため、クロスプラットフォーム開発フレームワークとして、Uniapp のネットワーク リクエスト機能はその不可欠な部分です。 Uniapp で開発する場合、ネットワーク リクエスト インターフェイスは非常にシンプルです。公式のネットワーク リクエスト API または uni-app が提供するサードパーティのネットワーク リクエスト ライブラリを使用できます。ただし、初心者にとっては、ネットワーク リクエストの結果の詳細が一部理解できない場合があります。この記事では、Uniapp ネットワーク リクエスト結果の関連内容を詳しく紹介します。

Uniapp 公式ネットワーク リクエスト API

uni.request(object) は、HTTP/HTTPS リクエストを送信してデータを返すことができる、Uniapp 公式ネットワーク リクエスト API。構文は次のとおりです。

uni.request({
url: '',
メソッド: '',
データ: {},
ヘッダー: {},
成功: res => {},
失敗: () => {},
完了: () => {}
})

ここで URL is Required、要求されたアドレスを表します。method はオプション、要求メソッドを表します。デフォルトは GET、data はオプション、要求されたデータを表します。header はオプション、要求ヘッダー情報を表します。success、fail、および complete も同様です。オプション。それぞれリクエストの成功、失敗、完了後のコールバック関数を表します。

上記は最も基本的なネットワーク リクエストの構成例ですが、リクエストのタイムアウト、応答データの種類、証明書の検証なども設定できます。以下では、ネットワークリクエスト完了後にその結果を取得する方法について説明します。

ネットワーク リクエスト結果の構造体

ネットワーク リクエストが成功すると、サーバーは応答結果を返します。Uniapp では、応答結果は応答オブジェクトの data 属性に格納されます。具体的な構造を次の図に示します。

uniapp ネットワークリクエストの結果

応答ステータス コードは statusCode 属性に格納され、ステータス コードの意味は HTTP プロトコルを通じて照会できます。 。 header属性にはレスポンスヘッダ情報が格納されます。応答データは data 属性に格納され、そのデータ型は string または ArrayBuffer 型で、JSON.parse() を通じてオブジェクト型に変換できます。

Uniappはネットワークリクエストの結果を取得します

サーバーがリクエストに正常に応答すると、成功コールバック関数が実行され、このとき関数のパラメータを通じて応答結果を取得できます。 。

uni.request({

url: 'url',
success: function(res) {
    console.log(res.data); // 响应数据
    console.log(res.statusCode); // 响应状态码
    console.log(res.header); // 响应头信息
},
fail: function(res) {
    console.log(res.errMsg); // 错误信息
}

})

ここでの res は、ネットワーク リクエストの結果オブジェクトです。成功コールバック関数では、res.data、res を渡すことができます。 statusCode や res.header などの属性は、ネットワークリクエストの応答結果を取得します。

応答データの変換

ネットワーク リクエストによって返されるデータ形式は不確実であり、JSON 文字列、XML 文字列、またはその他の形式のデータである可能性があるため、応答データを変換する必要があります。 Uniapp には、JSON 文字列をオブジェクト型に変換できる JSON.parse() メソッドが組み込まれています。応答データが JSON 形式でない場合は、他の変換方法を使用できます (たとえば、XML データは xml2js ライブラリを使用して変換する必要があります)。

uni.request({
url: 'url',
成功: function(res) {

var jsonStr = res.data;
var jsonObj = JSON.parse(jsonStr); // 将JSON字符串转成JSON对象

},
失敗: function(res) {

console.log(res.errMsg);

}
})

例外処理

ネットワーク リクエストでは、ネットワークの利用不能、サーバー障害、その他のエラーなどの異常な状況が発生する場合もあります。 Uniapp の失敗コールバック関数は、ネットワーク リクエストでエラーが発生したときにトリガーされ、エラー情報に基づいて処理できます。

uni.request({
url: 'url',
成功: function(res) {

console.log(res.data);

},
失敗: function(res) {

console.log(res.errMsg); // 打印错误信息

}
})

まとめ

上記の紹介を通じて、Uniapp ネットワーク リクエストの結果の構造、ネットワーク リクエストの結果を取得する方法、応答を理解しました。データ変換、例外処理、およびその他の関連コンテンツ。ネットワーク リクエストは、モバイル アプリケーション開発に不可欠な部分であり、多様な方法でデータを表示し、ユーザーに豊かでダイナミックなエクスペリエンスを提供し、アプリケーションの対話性と柔軟性を向上させるのにも役立ちます。

以上がuniapp ネットワークリクエストの結果の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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