1

アプリ開発に Kony studio を使用しています。Eclipse を使用してログイン検証を行い、oracle10g データベースに接続する Web サービスを作成するためのコードを作成しました。しかし、フロント エンドを Web サービスに接続しようとすると、フロント エンドでエラーが発生します。status==400 は検証されていますが、オペコードを 0 として取得していません。代わりに、else ステートメントに入ってエラー アラートを出しています。これは、Web サービスに接続するための Javascript コードです。助けてください。opstatus==0 は何を意味しますか?

function GetLogin()
{



var Userid =login.txtloginuname.text;
var Password = login.txtloginpass.text;

var inputParamsLogin={serviceID:"servicelogin",uname:Userid,pass:Password}


if (Userid!=null && Userid!="" && Password!="" && Password!=null)
  {

  appmiddlewareinvokerasync(inputParamsLogin,loginCallBackresponse);
  }
  else
  {
        var alert_seq5_act0 = kony.ui.Alert(
              {
            "message": "Please Enter User name and password",
            "alertType": constants.ALERT_TYPE_ERROR,
            "alertTitle": "",
            "yesLabel": "OK",
            "noLabel": "",
            "alertIcon": "",
            "alertHandler": null
        }, {});
        kony.application.dismissLoadingScreen();
   }

function loginCallBackresponse(status,loginResults)
{
        if(status==400)
        {
        alert("productResults");
            if(loginResults.opstatus==0)
            {
             alert("inside opstatus");

            else
            {
            var alert_seq5_act0 = kony.ui.Alert({"message": "Service      Failed:"+loginResults.errmsg,
            "alertType": constants.ALERT_TYPE_ERROR,
            "alertTitle": "",
            "yesLabel": "OK",
            "noLabel": "",
            "alertIcon": "",
            "alertHandler": null}, {});
            kony.application.dismissLoadingScreen();
            }
         }
       }
     }

「product results」というアラートが表示されますが、「inside opstatus」というアラートが表示されません。代わりに、「サービスに失敗したというアラートが表示されます。

4

1 に答える 1

2

opstatus が 0 の場合、サービス呼び出しが成功したことを示し、0 以外の値は失敗を示します。

Kony でのネットワーク コールの詳細については、以下をお読みください。

以下は、kony のネットワーク呼び出しに関連するパラメーターの説明です。

status - 整数値 - ステータスを示す

以下は、返されるさまざまなステータスです。

100 - ネットワーク呼び出しが正常に開始されました - 結果セットは利用できず、nil です。
200 - ネットワークが進行中 (最初のバイトの受信を開始したとき) - 結果セットは利用できず、nil です。
300 - ネットワーク呼び出しがキャンセルされました - 結果セットは利用できず、nil です。
400 - ネットワーク呼び出しが終了しました (成功と失敗の両方のシナリオで呼び出されます。実際の状態は、結果セットで opstatus を使用して照会できます。
注: モバイル Web では、コールバック関数は常に 400 のステータスで呼び出されます。その他の中間ステータス コードは次のとおりです。モバイル Web には適用されません。

resulttable - キーと値のペアを持つオブジェクト - 同じ構造に従います (opstatus、errcode、errmsg と実際のネットワークが返すデータ)
。これは、サービスによって返されるオブジェクトを表します。このオブジェクトには次の 3 つの値が含まれます。

opstatus

エラーコード

エラーメッセージ。

opstatus が 0 の場合、サービス呼び出しが成功したことを示し、0 以外の値は失敗を示します。

opstatus が 0 以外の値の場合は、errcode に取り込まれます。考えられるエラー コードは次のとおりです。

1000- 接続中の不明なエラー (プラットフォームがさまざまな種類のネットワーク エラーを区別できない場合、プラットフォームは既定でこのエラー コードを報告します)。
1011 - デバイスに WIFI またはモバイル接続がありません。接続を確立してから操作をお試しください。
1012 - リクエストが失敗しました。
1013 - ミドルウェアが無効な JSON 文字列を返しました。
1014 - リクエストがタイムアウトしました。
1015 - ホストが見つかりません。
1016 - ホストに接続できません。
1200 - SSL - 証明書関連のエラー コード。
各エラー コードに対応するエラー メッセージは、errmsg パラメータに取り込まれます。

于 2014-02-21T09:34:05.163 に答える